Fensterklasse, Wie auf Frame im Listender zugreifen (ItemEvents)

frager2345

Aktives Mitglied
Hi, also ich habe folgendes Problem, ich wollte bisschen mit Fensterklassen rumspielen und habe mal versucht ein Programm zu schreiben , welches ein Fenster erzeugt mit einer ClickBox. Wenn man das Häckchen setzt sollte sich die Hintergrundfarbe ändern. Nun versuche ich dies zu erreichen in dem ich in meinem Listener auf die Hintergrundfarbe meines Frames zurückgreife , aber irgendwie bekomm ich dies nicht so richtig hin :(
ich habe mehrer Klassen geschrieben um es ein bisschen zu üben und eine bessere Übersicht zu bekommen.
Java:
public class ActionEvent extends JFrame {

    public ActionEvent(){
        super ("ClickFrame");

        JPanel southPanel = new JPanel();
        CheckBox checkbox = new CheckBox();

        southPanel.add(new JLabel("switch"));
        southPanel.add(checkbox);

        this.add(southPanel);

        this.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

        pack();
        setVisible(true);
    }

    public static void main(String[] args) {
        new ActionEvent();
    }
}
Meine CheckBox:
Code:
public class CheckBox extends JCheckBox {

    public CheckBox(){

        this.addItemListener(new CheckBoxListener(this));
    }
mein Listener:
Code:
public class CheckBoxListener implements ItemListener {

    CheckBox j;

    public CheckBoxListener(CheckBox j){
        this.j = j;
    }

    public void itemStateChanged(ItemEvent e){
        Color color;
        if(e.getStateChange() == ItemEvent.SELECTED){
             color = Color.RED;

            //wie greife ich hier auf die hintergrundfarbe zurück?
        }else{
            color = Color.GREEN;
         
            //wie greife ich hier auf die hintergrundfarbe zurück?(
        }

   

}
Hoffe es findet sich Hilfe.
Gruß
 

KonradN

Super-Moderator
Mitarbeiter
Dis Strukturierung ist erst einmal wenig optimal und erschwert daher den Zugriff auf die jeweiligen Elemente.

Es gibt bei sowas generell zwei Wege:
1. Möglichkeit: Das, worauf du zugreifen willst, musst Du übergeben. Also wenn Du in der Instanz von CheckBoxListener auf etwas zugreifen willst, dann musst Du es dem geben. Da es aus dem Frame kommt, musst Du das entsprechende Element halt erst an die Checkbox übergeben und von dort halt dann weiter an den Listener.

2. Möglichkeit: Die Aktion musst du auslagern. Das ist das, was die Events bei der UI schon machen. Das, was der Button macht, ist nicht im Button sondern außerhalb. Das ginge hier also auch.

Der 2. Weg wäre der Richtige. Und da Du ja eigentlich nichts hinzu fügst, brauchst Du da viele Klasse schlicht nicht mehr und das vereinfacht sich alles massiv. Das können wir dann auch einmal machen. Dazu betrachten wir aber einfach einmal alles, was Du da bisher hast:

Klasse ActionEvent. Ja, ist denn ein ActionEvent ein JFrame? Und ist die Instanz wirklich ein Event? Das ist doch erst einmal einfach nur ein Programm. Also ist es das ActionEventTestProgram oder so. Und das hat eine main Methode um es zu starten. Und diese erzeugt eine neue Instanz von der Klasse:

Java:
public class ActionEventTestProgram {

    public ActionEventTestProgram(){
    }

    public static void main(String[] args) {
        new ActionEventTestProgram();
    }
}

Nun können wir da noch den Code rein packen, den Du haben wolltest:
Das ist dann erst einmal die Erzeugung einen JFrame mit dem Inhalt:

Code:
import javax.swing.*;

public class ActionEventTestProgram {

    public ActionEventTestProgram(){
        JFrame frame = new JFrame("ClickFrame");
        JPanel southPanel = new JPanel();
        JCheckBox checkbox = new JCheckBox();

        southPanel.add(new JLabel("switch"));
        southPanel.add(checkbox);

        frame.add(southPanel);

        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

        frame.pack();
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        new ActionEventTestProgram();
    }
}

Nun fehlt noch, das ja etwas passieren soll, wenn man die Checkbox drückt. Das muss da natürlich auch noch rein. Das ist dieser addItemListener. Das ist ein funktionales Interface, d.h. da wird nur eine Methode benötigt und die kann man als Methodenreferenz oder als Lambda Ausdruck haben. Dazu reicht es aber, wenn wir uns die betreffende Methode einfach einmal aus Deinem Listener heraus kopieren:

Code:
    public void itemStateChanged(ItemEvent e){
        Color color;
        if(e.getStateChange() == ItemEvent.SELECTED){
            color = Color.RED;

            //wie greife ich hier auf die hintergrundfarbe zurück?
        }else{
            color = Color.GREEN;

            //wie greife ich hier auf die hintergrundfarbe zurück?(
        }
    }

Erst einmal ist der Name etwas blöd ... Was macht die Methode? Bzw. was soll diese machen? Sie Soll die Farbe wechseln beim Checkbox Wechsel. Also sowas wie switchColorOnCheckboxStateChangeEvent (Ja, wird etwas lang - evtl. fällt Dir ein besserer Name ein. Mir gefällt der On... Part nicht, denn der gehört da nicht hin ... ich mache noch ein Post mit einem Refactoring!). Können wir also umbenennen.

Dann haben wir aber weiter das Problem, dass wir ja auf die Elemente zugreifen können wollen. Das sind aber bisher nur lokale Variablen im Konstruktor. Das machen wir einfach zu Instanzvariablen.

Und zuletzt wollen wir noch den Listener eintragen. Und schon haben wir folgenden Code:

Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ItemEvent;

public class ActionEventTestProgram {
    private JFrame frame;
    private JPanel southPanel;
    private JCheckBox checkbox;
    public ActionEventTestProgram(){
        frame = new JFrame("ClickFrame");
        southPanel = new JPanel();
        checkbox = new JCheckBox();
        checkbox.addItemListener(this::switchColorOnCheckboxStateChangeEvent);
        southPanel.add(new JLabel("switch"));
        southPanel.add(checkbox);

        frame.add(southPanel);

        frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);

        frame.pack();
        frame.setVisible(true);
    }

    public static void main(String[] args) {
        new ActionEventTestProgram();
    }

    public void switchColorOnCheckboxStateChangeEvent(ItemEvent e){
        Color color;
        if(e.getStateChange() == ItemEvent.SELECTED){
            color = Color.RED;

            //wie greife ich hier auf die hintergrundfarbe zurück?
        }else{
            color = Color.GREEN;

            //wie greife ich hier auf die hintergrundfarbe zurück?(
        }
    }
}

Jetzt wird die Farbe noch nicht geändert, aber Du hast jetzt die Möglichkeit, auf frame und southPanel zuzugreifen um diese zu verändern.
 

KonradN

Super-Moderator
Mitarbeiter
Und nun noch als letzter Schritt: Diese blöde Methode. Im Augenblick macht die noch zwei Dinge, die diese Namensgebung schwer macht.

Was uns noch etwas fehlt ist eine "Separation of Concerns". Es ist üblich, dass man gewisse Funktionalitäten aufteilt. Da finden sich dann diverse Pattern wie MVC oder MVVM. Da wir hier aber so gut wie nichts zu trennen hätten, lassen wir alles zusammen und ignorieren das erst einmal. Aber evtl. willst Du MVC einmal nachlesen.

Was wir auf jeden Fall haben, ist eine Methode, die aufgerufen wird, wenn sich da an der Checkbox etwas ändert. Die nenne ich immer gerne on.... Also wäre das hier eine Methode onCheckboxStateChange.

Dies soll etwas machen - und zwar die Hintergrundfarbe ändern. Das sollte eine eigene Methode sein: setBackgroundColor(Color).
Damit wird die Methode nur noch ein einfaches:
Code:
    private void onCheckboxStateChange(ItemEvent e){
        if(e.getStateChange() == ItemEvent.SELECTED){
            setBackgroundColor(Color.RED);
        }else{
            setBackgroundColor(Color.GREEN);
        }
    }

Und dann gibt es noch das setBackgroundColor:
Code:
    private void setBackgroundColor(Color color) {
        southPanel.setBackground(color);
    }

Das wäre dann eine mögliche Aufgliederung mit Methodennamen, die mir so noch etwas besser gefallen...
 

Blender3D

Top Contributor
Nun versuche ich dies zu erreichen in dem ich in meinem Listener auf die Hintergrundfarbe meines Frames zurückgreife
Java:
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.JCheckBox;
import javax.swing.JLabel;
import javax.swing.JPanel;

@SuppressWarnings("serial")
public class ColorChangePanel extends JPanel {
    private JLabel colorlabel = new JLabel();
    private JCheckBox checkbox = new JCheckBox();
    private String[] checkBoxText = { " green", "  red   " };
    private Color[] labelColor = { Color.GREEN, Color.RED };
    private int colorId = 0;

    public ColorChangePanel(int width, int height) {
        setPreferredSize(new Dimension(width, height));
        colorlabel.setPreferredSize(new Dimension( 7* width / 8,7*height/8));
        checkbox.addItemListener(e -> changeLabelColor());
        add(colorlabel);
        add(checkbox);
        changeLabelColor();
        setBackground(Color.DARK_GRAY);
        checkbox.setFocusable(false);
        colorlabel.setOpaque(true);
    }

    private void changeLabelColor() {
        colorId = (colorId + 1) % labelColor.length;
        colorlabel.setBackground(labelColor[colorId]);
        checkbox.setText(checkBoxText[colorId]);
    }
}
Java:
import javax.swing.JFrame;

public class TestCheckBoxListener {
    public static void main(String[] args) {
        JFrame frame = new JFrame("Color Changer");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.add(new ColorChangePanel(400, 400));
        frame.setResizable(false);
        frame.pack();
        frame.setVisible(true);
    }
}
 

frager2345

Aktives Mitglied
1. Möglichkeit: Das, worauf du zugreifen willst, musst Du übergeben. Also wenn Du in der Instanz von CheckBoxListener auf etwas zugreifen willst, dann musst Du es dem geben. Da es aus dem Frame kommt, musst Du das entsprechende Element halt erst an die Checkbox übergeben und von dort halt dann weiter an den Listener.
Erstmal danke für die sehr ausführliche und gut heranführende Antwort. Hat mir sehr geholfen. Ok, also könnte ich theoretisch auch einfach eine getter Schreiben mit der man dann die Hintergrundfarbe bekommt.
Nun können wir da noch den Code rein packen, den Du haben wolltest:
Das ist dann erst einmal die Erzeugung einen JFrame mit dem Inhalt:
Ich könnte auch hier einfach doch von der Klasse Frame erben lassen und mit 'this' auf den Frame zugreifen , oder ?
this::switchColorOnCheckboxStateChangeEvent
könntest du mir diesen Ausdruck erklären, rufe ich hier switchColorOnCheck mit this (Frame) auf?
Jetzt wird die Farbe noch nicht geändert, aber Du hast jetzt die Möglichkeit, auf frame und southPanel zuzugreifen um diese zu verändern.
Ahh ok, also wenn ich die Methoden in einer Klasse schreibe ist es echt deutlich einfache . Gibt es bestimmte Ansatzpunkte wann man eigene Klassen dafür schreiben sollte?
 

frager2345

Aktives Mitglied
Was uns noch etwas fehlt ist eine "Separation of Concerns". Es ist üblich, dass man gewisse Funktionalitäten aufteilt. Da finden sich dann diverse Pattern wie MVC oder MVVM. Da wir hier aber so gut wie nichts zu trennen hätten, lassen wir alles zusammen und ignorieren das erst einmal. Aber evtl. willst Du MVC einmal nachlesen.
Ok, werd ich machen. Danke!
Dies soll etwas machen - und zwar die Hintergrundfarbe ändern. Das sollte eine eigene Methode sein: setBackgroundColor(Color).
Damit wird die Methode nur noch ein einfaches:
Aber könnte man dies dann nicht auch in der onCheckBoxState machen und die Farbe als Parameter übergeben ?
 

frager2345

Aktives Mitglied
Java:
import java.awt.Color;
import java.awt.Dimension;
import javax.swing.JCheckBox;
import javax.swing.JLabel;
import javax.swing.JPanel;

@SuppressWarnings("serial")
public class ColorChangePanel extends JPanel {
    private JLabel colorlabel = new JLabel();
    private JCheckBox checkbox = new JCheckBox();
    private String[] checkBoxText = { " green", "  red   " };
    private Color[] labelColor = { Color.GREEN, Color.RED };
    private int colorId = 0;

    public ColorChangePanel(int width, int height) {
        setPreferredSize(new Dimension(width, height));
        colorlabel.setPreferredSize(new Dimension( 7* width / 8,7*height/8));
        checkbox.addItemListener(e -> changeLabelColor());
        add(colorlabel);
        add(checkbox);
        changeLabelColor();
        setBackground(Color.DARK_GRAY);
        checkbox.setFocusable(false);
        colorlabel.setOpaque(true);
    }

    private void changeLabelColor() {
        colorId = (colorId + 1) % labelColor.length;
        colorlabel.setBackground(labelColor[colorId]);
        checkbox.setText(checkBoxText[colorId]);
    }
}
Java:
import javax.swing.JFrame;

public class TestCheckBoxListener {
    public static void main(String[] args) {
        JFrame frame = new JFrame("Color Changer");
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.add(new ColorChangePanel(400, 400));
        frame.setResizable(false);
        frame.pack();
        frame.setVisible(true);
    }
}
Danke erstmal für die Antwort. Also das Stichwort ist hier ja eindeutig alles in eine Klasse zu schreiben :)
 

KonradN

Super-Moderator
Mitarbeiter
könntest du mir diesen Ausdruck erklären, rufe ich hier switchColorOnCheck mit this (Frame) auf?
Bei dem folgenden Ausdruck:
checkbox.addItemListener(this::switchColorOnCheckboxStateChangeEvent);

benötigt der addItemListener eine Instanz, welche ein funktionales Interface implementiert. Bei Funktionalen Interfaces handelt es sich um ein Interface, bei dem genau eine Methode implementiert werden muss.

Ab Java 8 kann man für funktionale Interfaces auch angeben:
a) Eine Lambda Expression (teilweise als "anonyme Methode" bezeichnet).
b) eine Methodenreferenz.

Bei dem this::switchColorOnCheckboxStateChangeEvent handelt es sich um eine Methodenreferenz. Die Referenz verweist auf die Methode switchColorOnCheckboxStateChangeEvent von this.

Ahh ok, also wenn ich die Methoden in einer Klasse schreibe ist es echt deutlich einfache . Gibt es bestimmte Ansatzpunkte wann man eigene Klassen dafür schreiben sollte?
Eigene Klassen machen immer dann Sinn, wenn Du da ein Verhalten oder einen Zustand hinzufügen willst und dies dann wirklich eine neue Art von Objekt ergibt. Das ist das, was @Blender3D gezeigt hat: Er hat sozusagen ein Control erstellt, welches ein spezielles Verhalten hat.

Ich könnte auch hier einfach doch von der Klasse Frame erben lassen und mit 'this' auf den Frame zugreifen , oder ?
Das ist technisch möglich, aber bei der objektorientierten Entwicklung hat man feststellen müssen, dass die Vererbung deutlich überbewertet ist. Dies hat dazu geführt, dass hier viele Regeln aufgestellt wurden, die teilweise sehr strikt sind (z.B. Liskovs Substitution Principle) und teilweise gute Ratschläge geben (z.B. Composition over Inheritance). Letzteres ist hier angewendet worden. Du willst ja eigentlich keine Klasse haben, die JFrame erweitert und sich genau wie ein JFrame verhält. So soll dein konkretes Fenster einen bestimmten Title haben und der soll nicht von außen geändert werden. Daher ist hier Composition vorzuziehen, d.h. Deine Klasse erbt nicht von JFrame sondern sie hat ein JFrame. Damit ist das dann auch gekapselt und du kannst die Methoden nach außen geben, die Du willst und gibst nicht automatisch alles nach außen, was JFrame nach außen gibt. Da wäre das Stichwort Kapselung.

Hier sind also immer mehrere Dinge zu sehen:
a) technische Machbarkeit
b) Was ist zweckmäßig - hier würde ich den Punkt einfach als Clean Code / Clean Architecture umschreiben.

Das ließe sich auch auf den Code von @Blender3D anwenden: Soll sein Control sich wie ein JPanel verhalten? Macht es da z.B. Sinn, dass da noch weitere Elemente hinzu gefügt werden? Evtl. macht es also wenig Sinn, dass hier von JPanel abgeleitet wurde. Statt dessen soll es ggf. nur das Verhalten eines normalen Controls haben, also wäre ggf. java.awt.Component besser geeignet gewesen und es hätte dann nur ein JPanel intern besessen.
Das aber nur als zweites Beispiel bezüglich dieses Punktes. Das soll keine Kritik am Code selbst sein - das ist ein schnell zusammengeschriebener Code, der (Dir) etwas bestimmtes zeigen sollte und da wäre so eine "Verkomplizierung" schlicht kontraproduktiv!

Ist das etwas deutlich geworden? Oder sollte man dies noch etwas mehr im Detail ausführen?
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
Alex_99 Aktion ausführen wenn Frame disposed wurde Java Basics - Anfänger-Themen 5
S GUI Frame wechseln Java Basics - Anfänger-Themen 15
C Exportierte JAR öffnet zweiten Frame nicht mehr Java Basics - Anfänger-Themen 7
C Erkennen ob Frame geschlossen wurde Java Basics - Anfänger-Themen 2
C Erste Schritte Spieler an anderen Frame weitergeben Java Basics - Anfänger-Themen 23
G Probleme bei Frame aufgaben Java Basics - Anfänger-Themen 6
CptK Interface Klasse Frame (extends JFrame) aus anderer Klasse schließen Java Basics - Anfänger-Themen 7
S Interface (WindowBuilder) Panels in einen Frame einfügen Java Basics - Anfänger-Themen 10
S Nach dem Herüberschieben eines Arrays zwischen 2 Frames öffnet sich das Frame nicht mehr Java Basics - Anfänger-Themen 12
S in ActionListener auf Eingabe aus anderem Frame warten Java Basics - Anfänger-Themen 2
D Interface Frame doppelt durch Aufruf der GUI Klasse Java Basics - Anfänger-Themen 1
M Erste Schritte Neuen Frame nur einmal offen haben Java Basics - Anfänger-Themen 6
schoenosrockos JButton füllt immer das ganze frame Java Basics - Anfänger-Themen 1
R Erste Schritte Frame mit Ladebalken und BestätigungsButton Java Basics - Anfänger-Themen 10
das_leon Interface Frame in einem Frame (Window Builder) Java Basics - Anfänger-Themen 2
Anfänger2011 Frame zeigt nicht gewünschtes Ergebnis an ... Java Basics - Anfänger-Themen 5
Z Object Kreis am Frame abprallen lassen! Java Basics - Anfänger-Themen 12
D Bild in Frame einfügen Java Basics - Anfänger-Themen 11
I Methoden Schwierikeiten mit Protokollfenster (Frame Objekt) Java Basics - Anfänger-Themen 4
A mehrere Panels in eigenen Klasssen in einem Frame Java Basics - Anfänger-Themen 16
J Extra Fenster (Frame) Java Basics - Anfänger-Themen 20
W Frame in anderer Klasse anzeigen lassen Java Basics - Anfänger-Themen 1
E Von Instanz des Dialogs auf das Frame zugreifen Java Basics - Anfänger-Themen 8
E 2. JFrame erkennt 1. Frame Java Basics - Anfänger-Themen 6
C Bild ins Frame laden und Objekte drüber legen Java Basics - Anfänger-Themen 1
R File chooser Dateien in frame anzeigen lassen Java Basics - Anfänger-Themen 5
L bestimmten Frame anzeigen lassen? Java Basics - Anfänger-Themen 6
H Textfeldinhalt löschen nachdem Frame geschlossen wird Java Basics - Anfänger-Themen 8
L Kalender Java Frame Java Basics - Anfänger-Themen 7
A Frame Java Basics - Anfänger-Themen 3
P Verwirrung mit AWT Frame und main Methode Java Basics - Anfänger-Themen 19
A Frame java Java Basics - Anfänger-Themen 3
D Frame schließt gleich alle Frames Java Basics - Anfänger-Themen 5
T udp -> bytearray -> image -> ausgabe via frame Java Basics - Anfänger-Themen 6
J Erste Schritte Speichern / Speichern unter / title Frame Java Basics - Anfänger-Themen 5
F Frame in Frame Java Basics - Anfänger-Themen 3
U GUI - resize frame Java Basics - Anfänger-Themen 13
J Open reading Frame Java Basics - Anfänger-Themen 4
J Erstelltes Frame wird nicht angezeigt Java Basics - Anfänger-Themen 2
K Frame öffnen klappt nicht?! Java Basics - Anfänger-Themen 36
JAVAnnik Anwendung nach Schließen vom letzen Frame Java Basics - Anfänger-Themen 9
B Referenz zu anderen Frame Java Basics - Anfänger-Themen 10
A Frame Background Java Basics - Anfänger-Themen 21
S Klassen Klassenname = Frame? Java Basics - Anfänger-Themen 11
R Eingefärbtes Panel wird in Frame nicht angezeigt Java Basics - Anfänger-Themen 10
I Java - Text in neuem Frame wird nicht angezeigt Java Basics - Anfänger-Themen 4
M Frame mit mehreren areas Java Basics - Anfänger-Themen 14
B Frame über Button öffnen Java Basics - Anfänger-Themen 8
R Button soll neuen Frame öffnen Java Basics - Anfänger-Themen 21
L Variablen Frame Variablen-Schleife Java Basics - Anfänger-Themen 3
D Neues Frame öffnen Java Basics - Anfänger-Themen 7
V Frame bleibt grau Java Basics - Anfänger-Themen 5
G Polygon in Frame zeichnen Java Basics - Anfänger-Themen 3
F frame wird nicht angezeigt? Java Basics - Anfänger-Themen 10
S 2 Panels in einen Frame Java Basics - Anfänger-Themen 5
H Panels in Frame einbinden Java Basics - Anfänger-Themen 3
E Frame neu Zeichnen Java Basics - Anfänger-Themen 3
A Bild wird auf Frame nicht angezeigt! Keine Fehlermeldung Java Basics - Anfänger-Themen 3
O Grafik in Frame laden Java Basics - Anfänger-Themen 9
T Frame öffnen Java Basics - Anfänger-Themen 6
I 1 Frame und mehrere Panels klappt nicht Java Basics - Anfänger-Themen 4
I JTable in bestehenden Frame integrieren Java Basics - Anfänger-Themen 6
Y Hilfe: JOGL / OPENGL in Frame Java Basics - Anfänger-Themen 2
J Frame schließen, Ereignis behandeln, Vorgang abbrechen Java Basics - Anfänger-Themen 4
Luk10 Frame schließen Java Basics - Anfänger-Themen 2
A Frame schließen!? Help! Java Basics - Anfänger-Themen 5
A Frame reagiert nicht Java Basics - Anfänger-Themen 6
H Modalen JDialog schließen, ohne dabei das Parent-Frame zu schließen Java Basics - Anfänger-Themen 7
J Frame bleibt schwarz beim Laden Java Basics - Anfänger-Themen 11
ModellbahnerTT Unterschied zwischen zwei Frame close Varianten Java Basics - Anfänger-Themen 3
R Frame Inhalt ausrichten Java Basics - Anfänger-Themen 5
MisterSeven Java Swing - Wie Frame größe festlegen?! Java Basics - Anfänger-Themen 10
E Verständnisfrage Syntax: frame.getContentPane().add(button) Java Basics - Anfänger-Themen 11
Stillmatic1985 Label in einem Frame zentrieren Java Basics - Anfänger-Themen 4
A Grafik erstellen und in Frame einfügen Java Basics - Anfänger-Themen 17
A Java Frame per X schließen? Java Basics - Anfänger-Themen 7
H2SO3- image beim awt frame wegmachen Java Basics - Anfänger-Themen 2
kulturfenster Panel in Frame integrieren Java Basics - Anfänger-Themen 5
kulturfenster Per Button Frame schliessen Java Basics - Anfänger-Themen 2
C Frame, JFrame, JDialog Java Basics - Anfänger-Themen 12
I JButton zum frame schließen Java Basics - Anfänger-Themen 6
M Variable in Frame anzeigen Java Basics - Anfänger-Themen 11
O Beim Schließen JDialog, im Frame-Owner eine Methode starten Java Basics - Anfänger-Themen 6
hdi Desktop-Auflösung abfragen -> setLocation() von Frame Java Basics - Anfänger-Themen 5
hdi keylistener hat keinen fokus oder: listener ohne frame? Java Basics - Anfänger-Themen 10
S Übergabe von Frame-Objekt - kritisch? Java Basics - Anfänger-Themen 7
N Frame in Frame erstellen Java Basics - Anfänger-Themen 2
B Java-Frame Taschenrechner - String -> Int und umgekehrt Java Basics - Anfänger-Themen 8
G Bild wird im falschen Frame angezeigt Java Basics - Anfänger-Themen 5
G Frame soll Focus behalten Java Basics - Anfänger-Themen 2
H Frame schließen Java Basics - Anfänger-Themen 5
G Frame Applet oder doch was anderes Java Basics - Anfänger-Themen 2
M Frame zeigt Desktop als Hintergrund Java Basics - Anfänger-Themen 2
J Eine swf-datei in einen Frame einfügen? Java Basics - Anfänger-Themen 6
K Schrift und Farben im Frame (Anfänger) Java Basics - Anfänger-Themen 2
D Frame in Center Screen Java Basics - Anfänger-Themen 7
A Frame aus Applet erzeugen und mit Inhalt füllen Java Basics - Anfänger-Themen 5
G Problemme mit: Aufruf einer Klasse aus einem Frame Java Basics - Anfänger-Themen 5
M Frame Schließen Java Basics - Anfänger-Themen 5
H homepage in frame aufrufen Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben