Hi,
in meiner Applikation wird durch einen Knopfdruck eine ggf. lange (da rekursive) Berechnung durchgeführt. Damit der User sieht, das gerade was passiert, möchte ich die GUI deaktivieren (mit bla.setEnabled(false)) und einen kleinen Text in ein vorhandenes JTextArea ("Vorgang wird berechnet") packen. Klarer Fall:
Doch leider, wird die GUI nicht deaktiviert, der Text nicht gesetzt, sondern gleich losgerechnet. Nehme ich die Berechnung raus, so wird die GUI brav deaktiviert. Wie ist dieses Verhalten zu erklären?
in meiner Applikation wird durch einen Knopfdruck eine ggf. lange (da rekursive) Berechnung durchgeführt. Damit der User sieht, das gerade was passiert, möchte ich die GUI deaktivieren (mit bla.setEnabled(false)) und einen kleinen Text in ein vorhandenes JTextArea ("Vorgang wird berechnet") packen. Klarer Fall:
Java:
public class GoButtonListener implements ActionListener {
public void actionPerformed(ActionEvent pE) {
_viewController.setGuiEnable(false); //ruft bei den gui-komponenten den setEnabled(boolean) auf
_evaluationTextArea.setText("Wird verarbeitet");
// hier kommen viele, lange Berechnungen...
_evaluationTextArea.setText(_auswertungsString);
_viewController.setGuiEnable(true);
}
Doch leider, wird die GUI nicht deaktiviert, der Text nicht gesetzt, sondern gleich losgerechnet. Nehme ich die Berechnung raus, so wird die GUI brav deaktiviert. Wie ist dieses Verhalten zu erklären?
Zuletzt bearbeitet: