Guten Morgen!
Ich habe eine GUI mit einigen Labels, Textfeldern und einem Button implementiert.
Die Strings in den Textfeldern werden aus einer Datei ausgelesen. Das erledigt für mich die Klasse Einlesen.
Um diese dann darzustellen, übergebe ich der Klasse GUI ein Objekt der Klasse Einlesen:
public GUI (Einlesen el)
Wird jetzt auf den Button geklickt, soll der nächste Datensatz eingelesen und dargestellt werden. Ich habe das bisher so gelöst: in der Klasse "public class okAction implements ActionListener", die beim Klicken auf den Button aufgerufen wird, mache ich folgendes:
Ich mache die alte gui also unsichtbar und erstelle eine neue, der ich dann die neu darzustellenden Daten durch ein aktualisiertes Objekt der Klasse Einlesen übergebe.
gui.repaint() wird zwar kompiliert, aber ändert nichts an den Daten - wie denn auch, ich übergebe ja auch nicht die aktuellen Daten.
Das geht doch mit Sicherheit auch praktischer?! Was mich vor allen Dingen stört:
- bei jedem Klick auf den Button verschwindet das Fenster kurz (ist ja auch klar, wenn es zuerst unsichtbar gemacht wird und dann erst das neue Fenster dargestellt wird) und
- das Symbol in der Taskleiste verschwindet auch bei jedem Klick kurz und wird dann von rechts wieder eingeschoben
Hat jemand bitte einen Tipp? :wink:
LG Julia
Ich habe eine GUI mit einigen Labels, Textfeldern und einem Button implementiert.
Die Strings in den Textfeldern werden aus einer Datei ausgelesen. Das erledigt für mich die Klasse Einlesen.
Um diese dann darzustellen, übergebe ich der Klasse GUI ein Objekt der Klasse Einlesen:
public GUI (Einlesen el)
Wird jetzt auf den Button geklickt, soll der nächste Datensatz eingelesen und dargestellt werden. Ich habe das bisher so gelöst: in der Klasse "public class okAction implements ActionListener", die beim Klicken auf den Button aufgerufen wird, mache ich folgendes:
Code:
gui.setVisible(false);
gui = new GUI (gui.el);
gui.setLocation(400, 400);
gui.setVisible(true);
Ich mache die alte gui also unsichtbar und erstelle eine neue, der ich dann die neu darzustellenden Daten durch ein aktualisiertes Objekt der Klasse Einlesen übergebe.
gui.repaint() wird zwar kompiliert, aber ändert nichts an den Daten - wie denn auch, ich übergebe ja auch nicht die aktuellen Daten.
Das geht doch mit Sicherheit auch praktischer?! Was mich vor allen Dingen stört:
- bei jedem Klick auf den Button verschwindet das Fenster kurz (ist ja auch klar, wenn es zuerst unsichtbar gemacht wird und dann erst das neue Fenster dargestellt wird) und
- das Symbol in der Taskleiste verschwindet auch bei jedem Klick kurz und wird dann von rechts wieder eingeschoben
Hat jemand bitte einen Tipp? :wink:
LG Julia