JLabel cannot be resolved

jaaBeg16

Mitglied
Hallo erst einmal,
ich bin neu hier im Forum. Die anfänglichen Grundkenntnisse in Java habe ich bereits erlangt, jetzt versuche ich mich an Gui´s mit dem WindowBuilder.

Mit meinem Programm soll hinterher, wenns fertig ist, eine Berechnung durchgeführt werden. Die Berechnung möchte ich in einer private Funktion außerhalb des Frames durchführen.

Um mein Problem aufzuzeigen reicht aber folgender Codeschnippsel (unten Beschreibung und Screen des Fehlers):
Java:
package gui;

import java.awt.BorderLayout;
import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextField;

public class Notenbilanz extends JFrame {

    private JPanel contentPane;
    private JTextField tfZahl;

    /**
     * Launch the application.
     */
    public static void main(String[] args) {
    EventQueue.invokeLater(new Runnable() {
       public void run() {
        try {
           Notenbilanz frame = new Notenbilanz();
           frame.setVisible(true);
        } catch (Exception e) {
           e.printStackTrace();
        }
       }
    });
    }

    /**
     * Create the frame.
     */
    public Notenbilanz() {
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    setBounds(100, 100, 450, 300);
    contentPane = new JPanel();
    contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
    setContentPane(contentPane);
    contentPane.setLayout(null);

    JLabel lblUeberschrift = new JLabel("Geben Sie eine Zahl ein:");
    lblUeberschrift.setBounds(10, 11, 130, 14);
    contentPane.add(lblUeberschrift);

    tfZahl = new JTextField();
    tfZahl.setBounds(10, 36, 86, 20);
    contentPane.add(tfZahl);
    tfZahl.setColumns(10);

    JLabel lblAusgabe = new JLabel("");
    lblAusgabe.setBounds(10, 202, 46, 14);
    contentPane.add(lblAusgabe);
    }

    //hier soll die Funktion die Zahl aus dem TextField in dem JLabel ausgeben
    private void ausgeben(){
    int zahl = Integer.parseInt(tfZahl.getText());
    lblAusgabe.setText(String.valueOf(zahl));
    }

}

In Eclipse bekomme ich jetzt folgende Meldung neben der ausgeben() - Funktion:
"lblAusgabe cannot be resolved" (siehe auch Screenshot im Anhang).

Das wundert mich, denn das TextField kann ich ja auch ohne Probleme ansprechen.
Würde mich freuen wenn mir jemand weiterhelfen kann!
 

Anhänge

  • codeschnippsel.png
    codeschnippsel.png
    11,8 KB · Aufrufe: 53
  • windowbuilderscreen.png
    windowbuilderscreen.png
    29,1 KB · Aufrufe: 46

Joose

Top Contributor
Das JTextfield hast du auch als Instanzattribut deklariert. Das JLabel ist eine lokale Variable im Konstruktor von Notenbilanz.

EDIT: Java-Code bitte in Code-Tags packen
[code=java] ... dein code ...[/code]
 

jaaBeg16

Mitglied
Vielen Dank für die super schnelle Antwort. Hat mir weitergeholfen und jetzt funktioniert's :)

Allerdings verstanden hab ich das noch nicht ganz:
Wenn ich das so deklariere hab ich eine lokale Variable?
Java:
    lblUeberschrift =new JLabel("");
    lblUeberschrift.setBounds(10, 11, 130, 14);
    contentPane.add(lblUeberschrift);

Das hier wäre das das JLabel als Instanzattribut?
Java:
   lblUeberschrift =new JLabel("");
    lblUeberschrift.setBounds(10, 11, 130, 14);
    contentPane.add(lblUeberschrift);

Da herrscht noch ein wenig Erklärungsbedarf bei mir. Vorallem weil der WindowBuilder in Eclipse scheinbar wahlweise manchmal "JLabel lblUeberschrift = ..." und manchmal "lblUeberschrift = ..." macht..!?
 

flopalko

Bekanntes Mitglied
Der Unterschied liegt wie oben bereits erwähnt in der Sichtbarkeit der Variable. Die Instanzvariable ist in deiner Klasse immer sichtbar, eine lokal im Konstruktor angelegte Variable ist dies nur in diesem Block (dem Konstruktor).
Was der WindowBuilder in Eclipse macht kann ich leider nicht beantworten, ich habe diesen noch nie verwendet.
 

jaaBeg16

Mitglied
Das mit der Sichtbarkeit der Variablen war mir eigentlich bekannt. Ich dachte jedoch es sei egal, ob ich Innerhalb des Konstruktors (wo ja auch die TextFields deklariert sind) mit oder ohne den Typ (also JLabel) vor dem Variablenname deklariere.

Auf jeden Fall vielen Dank für die Hilfe und ein schönes Wochenende euch!
 

flopalko

Bekanntes Mitglied
Nein, dein Textfield ist nicht im Konstruktor deklariert, das ist ja genau der Unterschied zu deinem Label.
Das Textfield ist als Instanzvariable deklariert und dieser wird im Konstruktor ein Wert zugewiesen.
Dein Label wird im Konstruktor angelegt, dem ContentPane hinzugefügt und dann endet dein Konstruktor. Daher hast du ab hier keine Sichtbarkeit mehr auf deine Variable. Mach dir da noch den Unterschied klar ;)
 

jaaBeg16

Mitglied
Aaaaaah!!! :) ich deklariere ganz am Anfang des Codes
Java:
 public class Notenbilanz extends JFrame{ HIER VARIABLEN DEKLARATION
im Konstruktor folgt die Wertzuweisung. Mein Fehler war das ich das JLabel oben nicht deklariert habe, daher auch im Konstruktor gezwungen war, das JLabel davor zu packen!
 

flopalko

Bekanntes Mitglied
Richtig.
Und nochwas zu deinem Programm: in diesem Fall ist das Ableiten von JFrame sehr unschön. Eine Klasse leitet man dann ab, wenn man sie erweitern möchte, nicht so. Erstelle einfach ein Frame und pack dort dann alles rein.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J Auf einem JLabel Linien Malen Java Basics - Anfänger-Themen 1
J neues Object (JLabel) vorab zum Layout hinzufügen , Location setzen, etc? Java Basics - Anfänger-Themen 2
J JLabel bzw. Image Icon mit KeyEvent bewgen Java Basics - Anfänger-Themen 9
GoenntHack Java Text von JLabel verändert sich nicht Java Basics - Anfänger-Themen 1
JUNSKI Zeilenumbruch JLabel Java Basics - Anfänger-Themen 1
H Mit setter-Methode JLabel in einer andern Klasse ändern. Java Basics - Anfänger-Themen 40
K Jlabel mit itemlistevent Text gegeben, wird nicht angezeigt Java Basics - Anfänger-Themen 5
S Mit for-Schleife ein 2D JLabel-Array mit veränderbaren Icons erstellen Java Basics - Anfänger-Themen 3
Tom/S JLabel Icon Farbe Java Basics - Anfänger-Themen 2
N Variabel in eine class mit "extends JLabel" übertragen Java Basics - Anfänger-Themen 2
S Kontrollieren, ob ein Jlabel nicht sichtbar ist Java Basics - Anfänger-Themen 6
S Input/Output JLabel verschieben Java Basics - Anfänger-Themen 7
AnnaBauer21 GridBagLayout JLabel weightx: Unterschiedliche Breite mit & ohne Text Java Basics - Anfänger-Themen 6
CptK Interface JLabel bewegt sich nicht sondern teleportiert sich... Java Basics - Anfänger-Themen 3
CptK Methoden JLabel erstellen & verschieben Java Basics - Anfänger-Themen 1
T JLabel hat falsche größe Java Basics - Anfänger-Themen 1
A JLabel mit button drücken verändern Java Basics - Anfänger-Themen 6
CptK JLabel im Array Java Basics - Anfänger-Themen 2
L Threads Mit Threads JLabel ändern! Java Basics - Anfänger-Themen 2
D Methoden JButton und JLabel in einer Methode erstellen Java Basics - Anfänger-Themen 5
P Auf JLabel zugreifen Java Basics - Anfänger-Themen 12
P Erste Schritte JLabel wird nicht angezeigt Java Basics - Anfänger-Themen 4
W JLabel, Farbe durch Listener ändern Java Basics - Anfänger-Themen 6
M Vererbung Ein JLabel einer Elternklasse anzeigen Java Basics - Anfänger-Themen 8
D Klassen Wert aus JTextfield in JLabel (andere Klasse) darstellen. Java Basics - Anfänger-Themen 60
J Array in JLabel ausgeben Java Basics - Anfänger-Themen 2
S Variablen JLabel backImagePanel Fehlermeldung Java Basics - Anfänger-Themen 3
snipesss [Java] Schriftart und Schriftgröße von JLabel in einer Zeile festlegen? Java Basics - Anfänger-Themen 3
S JLabel sichtbar machen/GUI Java Basics - Anfänger-Themen 3
WetWer Animation JLabel Java Basics - Anfänger-Themen 2
W aus Methode auf JLabel zugreifen und Image verändern Java Basics - Anfänger-Themen 1
W JLabel in Main aus Thread verändern. Java Basics - Anfänger-Themen 4
L Variable für JLabel wird nicht erzeugt Java Basics - Anfänger-Themen 6
T Jlabel durch Text in 2 anderen Jlabels sichtbar machen Java Basics - Anfänger-Themen 4
T Objekt in ein JLabel der GUI übergeben Java Basics - Anfänger-Themen 3
S JLabel an Methode übergeben Java Basics - Anfänger-Themen 2
D Ausgabe über JLabel Java Basics - Anfänger-Themen 12
M Erste Schritte Wie speichert und gibt man Arrays aus? (JLabel) Java Basics - Anfänger-Themen 12
M Fangspiel-Probleme (JLabel, Objekt zurücksetzen) Java Basics - Anfänger-Themen 3
C Rechenaufgabe im JLabel ausrechnen Java Basics - Anfänger-Themen 2
J JLabel Icon neu zeichnen Java Basics - Anfänger-Themen 2
Z JLabel Icon ändern Java Basics - Anfänger-Themen 2
Z Vector in jTextField/jLabel darstellen Java Basics - Anfänger-Themen 4
D JLabel ändern in actionperformed Java Basics - Anfänger-Themen 2
V jab ich eclipse verrückt gemacht :D ? array Jpanel, Jlabel Grafik Fehler / Frage Java Basics - Anfänger-Themen 5
W Klassen Fehler bei public void setLabelText(JLabel label, String text) Java Basics - Anfänger-Themen 11
G drawString/ JLabel updaten Java Basics - Anfänger-Themen 1
G mouseDragged auf Jlabel Java Basics - Anfänger-Themen 2
K JLabel zur Laufzeit dynamisch erzeugen Java Basics - Anfänger-Themen 7
M Frage zu JLabel Java Basics - Anfänger-Themen 5
T JLabel-Bilderpfad ändern... Java Basics - Anfänger-Themen 2
T JLabel anzeigen lassen... Java Basics - Anfänger-Themen 6
T Mein String in ein JLabel stecken Java Basics - Anfänger-Themen 2
Sogomn JLabel in anderer Klasse zum JFrame hinzufügen Java Basics - Anfänger-Themen 2
T JLabel zum klicken... Java Basics - Anfänger-Themen 15
W Datentypen String-Ausgabe in jLabel Java Basics - Anfänger-Themen 14
J JLabel Ausgabe Java Basics - Anfänger-Themen 3
B mouseClicked JLabel Array mitteilen Java Basics - Anfänger-Themen 6
L JLabel Icon Größe anpassen Java Basics - Anfänger-Themen 11
A Zeilenumbruch im Jlabel Java Basics - Anfänger-Themen 11
3 JLabel - Text in mehreren Zeilen zentrieren Java Basics - Anfänger-Themen 5
R JLabel imageicon jede Sekunde wechseln Java Basics - Anfänger-Themen 3
G GUI JLabel ersetzen Java Basics - Anfänger-Themen 3
M Zeilenumbruch in JLabel Java Basics - Anfänger-Themen 51
A Bildgröße automatisch auf JLabel Größe konvertieren Java Basics - Anfänger-Themen 9
S Text in einem JLabel nur zum Teil Fett Java Basics - Anfänger-Themen 2
B JLabel Text Formatierung Java Basics - Anfänger-Themen 5
J Bild auf JLabel wird nicht angezeigt Java Basics - Anfänger-Themen 11
S NullPointerException bei zweidimensionalem JLabel-Array Java Basics - Anfänger-Themen 4
T JLabel richtig anordnen? wie gehts? Java Basics - Anfänger-Themen 9
L GridLayout mit JLabel-Array füllen Java Basics - Anfänger-Themen 12
SexyPenny90 JLabel Text und Icon untereinander verwenden Java Basics - Anfänger-Themen 3
B JLabel löschen/überschreiben Java Basics - Anfänger-Themen 10
P Netbeans Platform - JLabel und JPanel setLocation Problem Java Basics - Anfänger-Themen 2
A JLabel erst auf null dann auf einen Wert setzen Java Basics - Anfänger-Themen 7
F JLabel-Background Java Basics - Anfänger-Themen 7
T JLabel Farbe ändern, Problem Java Basics - Anfänger-Themen 2
T JLabel mit Text und Bild Java Basics - Anfänger-Themen 3
C JLabel markieren Java Basics - Anfänger-Themen 2
M BeanBinding Jlist an Jlabel Java Basics - Anfänger-Themen 2
M OOP JLabel werden nicht korrekt eingefärbt Java Basics - Anfänger-Themen 6
P JLabel prüfen,... Java Basics - Anfänger-Themen 6
M JLabel auf JPanel positionieren Java Basics - Anfänger-Themen 8
P JLabel auf JFrame - Schrift vergrößern Java Basics - Anfänger-Themen 2
Z Fonts in einem JLabel Java Basics - Anfänger-Themen 7
MonsterBit setText bei JLabel Java Basics - Anfänger-Themen 16
K Zufällige Auswahl innerhalb eines Arrays und Arrays aus JLabel füllen Java Basics - Anfänger-Themen 32
D JPanel + ein JLabel Java Basics - Anfänger-Themen 8
M JLabel attribut wert zuweisen Java Basics - Anfänger-Themen 2
E JLabel deaktivieren ohne Veränderung der Darstellung Java Basics - Anfänger-Themen 2
0 Icon in JLabel Java Basics - Anfänger-Themen 6
JAVAnnik variable erhöhen bei Klick auf JLabel Java Basics - Anfänger-Themen 3
T JLabel wird nicht gesetzt in Schleife Java Basics - Anfänger-Themen 9
T aus stateChanged ein JLabel adden Java Basics - Anfänger-Themen 6
P HTML <input> Feld in einem JLabel auslesen Java Basics - Anfänger-Themen 4
C Inhalt eines Strings in JLabel ausgeben? Java Basics - Anfänger-Themen 21
T JLabel durch ActionListener ändern Java Basics - Anfänger-Themen 4
L Rahmen bei jLabel Java Basics - Anfänger-Themen 3
F JLabel Problem? Java Basics - Anfänger-Themen 8
R Icon auf JLabel nach Knopfdruck ändern Java Basics - Anfänger-Themen 20

Ähnliche Java Themen

Neue Themen


Oben