Witam.
Myślałem że to rutynowa funkcja ale coś się sypie. Mam kod
Timer timer = new Timer(1000, new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
Label label = tester.getTimeLabel();
label.setText("Przykładowy tekst");
tester.setTimeLabel(label);
}
});
I zamiast zmieniać Label co sekundę, wyrzuca mi błąd przy funkcji label.setText()
Not on FX application thread; currentThread = AWT-EventQueue-0
Ktoś ma pomysły jak to naprawic?
EDIT
Działający, poprawiony kod :
MainController tester = new MainController();
Timer timer = new Timer(1000, new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
Platform.runLater(new Runnable() {
public void run() {
tester.setTimeLabelText("Przykładowy tekst");
}
});
}
});