# JTextField aktualisieren



## aemik (19. Mrz 2008)

Hallo,

Habe eine JTextField und schreibe eine Variable rein.
Diese Variable ist ein Zaehler und ändert sich ständig.
Wie halte ich das Textfeld aktuell?

danke
aemik


----------



## SlaterB (19. Mrz 2008)

das TextFeld ist immer (kurzzeitig) aktuell, nachdem du setText() aufrufst,

irgendjemand muss das aber machen, von selber passiert das nicht,


----------



## m@nu (19. Mrz 2008)

ändere dann, wenn dein zähler ändert, auch den inhalt deines JTextField's.
hierbei solltest du aber folgendes invokeLater-konstrukt nutzen:

```
SwingUtilities.invokeLater(new Runnable() {
    @Override
    public void run() {
        deinTextField.setText(counter);
    }
});
```

swing ist nicht thread safe; das heisst, jenachdem resp. ziemlich sicher wird dein JTextField nicht immer korrekt angezeigt wenn du aus deinem aktualisierungs thread/timer/wasauchimmer den setText ohne invokeLater aufrufst.


----------



## SlaterB (19. Mrz 2008)

setText dürfte zu den sicheren Operation zählen, behaupte ich einfach mal ohne näher Argumente,

sowas wird doch tausendfach in den GUIs dieser Welt aufgerufen, 
da jedesmal einen Thread zu erzeugen, oh Gott oh Gott (edit: ok, nur ein Runnable-Objekt, der Thread ist ja fest  )


----------

