是什么触发了变化?如果文本链接到某个对象的值,您可以使用绑定来在对象的值更改时自动更新 GUI。
或者,您可以尝试手动操作。例如,请参见下面的代码(这很简单 - 您可能需要在运行可运行对象时清除列表以避免运行它们两次 - 在这种情况下您需要处理并发问题等):
ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1);
final List<Runnable> list = new CopyOnWriteArrayList<Runnable>(); //your updates
Runnable updateGui = new Runnable() {
@Override
public void run() {
Platform.runLater(new Runnable() {
@Override
public void run() {
for (Runnable r : list) {
r.run();
}
}
});
}
};
scheduler.scheduleAtFixedRate(updateGui, 0, 1, TimeUnit.SECONDS);
list.add(new Runnable() {
@Override
public void run() {
priceLabel.setText(price);
}
});