3

我目前有一个绑定到标签的 value 属性

IntegerProperty value = new SimpleIntegerProperty(10);

// And then in the Constructor
label.textProperty().bindBidirectional(value, new NumberStringConverter());

并且 value 属性在用户按下按钮后被调用 10,000 次的函数中更新

value.setValue(value.get() + 1);

但是,当用户按下按钮时,程序会“冻结”,然后在完成所有计算后,它会在标签上显示 10,000。我希望标签在计算时显示值“1”,然后一直显示“2”到“10,000”。

4

1 回答 1

4

“在 JavaFX 应用程序线程上实现长时间运行的任务不可避免地会使应用程序 UI 无响应。最佳实践是在一个或多个后台线程上执行这些任务,并让 JavaFX 应用程序线程处理用户事件。”

这句话摘自 Oracle 文档: http ://docs.oracle.com/javafx/2/threads/jfxpub-threads.htm

我在进度条上遇到了同样的问题,我按照这些建议解决了这个问题。

于 2013-10-16T08:29:01.023 回答