我有以下代码:
@FXML public void initialize() {
Platform.runLater(new Runnable() {
@Override
public void run() {
try {
for(int i=0 ; i<10 ;i++) {
Thread.sleep(1000);
exampleButton.setText(String.valueOf(i));
}
}catch(Exception e) {}
}
});
}
显然应该每秒更改一次按钮的文本。
根据{{3}}问题,我将sleep
和setText
放入Platform.runLater
块中,因为不应该从主线程进行GUI修改。但是我的GUI仍然冻结。
为什么会这样?