我有一个TextArea,我希望能够在一段时间内向其追加字符或单词。我尝试使用Thread.sleep(),但很快就意识到这是大错特错。
我猜是在伪代码中
textArea.appendText("hey");
mysteryWaitMethod(500);
textArea.appendText("delayed");发布于 2013-06-01 12:53:03
JavaFX确实内置了一个定时器--它被称为Timeline。它简单明了,提供了额外的功能,比如Swing的Timer类,最重要的是,它在UI线程上执行代码。
我对JavaFX了解不多,但通常您需要修改在UI线程上执行的UI。这就是这个类要做的。我建议通过java.util.Timer使用它(在后台任务中使用它……而不是UI )。当多个线程试图扰乱一个UI时,往往会发生不好的事情(这就是使用这些计时器的原因)。
这篇文章提供了如何使用它的一个很好的例子:https://stackoverflow.com/a/9966213/1515592
https://stackoverflow.com/questions/16868445
复制相似问题