JDialog modal, es lassen sich keine Daten in Eingabefelder befüllen.

ThaDragon

Grünschnabel
Hallo,

hab folgendes Problem.

Ich habe ein JDialog mit mehreren Eingabefeldern (JTextField).

Dieser Dialog wird modal vom Hauptframe aufgerufen.

DataSourceDialog dialog = new DataSourceDialog(owner, "Edit connection", true);

Dann rufe ich die eigene Methode fillData() aus der Klasse DataSourceDialog auf.

txtUser.setText(dataSource.getUser());
txtPwd.setText(dataSource.getPwd());


Nach dem Öffnen des Dialogs haben die Textfelder keinen Inhalt.



Wenn ich den Dialog nicht modal öffne, dann werden die Daten gleich angezeigt.

Habt ihr ein Vorschlag, das die Daten angezeigt werden auch wenn der Dialog modal geöffnet wird.

Habt ihr tipps?

Danke für eure Hilfe
 
Dein Problem ist, dass der Hauptthread (der des Programms) pausiert wird, und dann weitergeführt, wenn der JDialog wieder geschlossen wird!

Lösung 1: Den Inhalt vor dem sichtbarmachen setzen!

Lösung 2: Den JDialog in einem eigene Thread sichtbar machen:

Java:
new Thread() {

    public void run() {
        dialog.setVisible(true);
    }
}.start();
 

Neue Beiträge

Zurück