gpt4 book ai didi

java - 在 JavaFx 中向 ListView 添加项目...线程?

转载 作者:行者123 更新时间:2023-12-01 11:26:48 24 4
gpt4 key购买 nike

我试图在处理时向 JavaFX 中的 ListView 添加一个字符串,但它一直卡住我的 GUI。

我已经尝试了以下线程 - 但似乎无法让它适用于 ListView。
有人知道如何/有一个示例说明如何在处理数据时更新 JavaFX 中的 ListView 吗?

new Thread(new Runnable() {
@Override public void run() {
for (int i=1; i<=1000000; i++) {
final int counter = i;
Platform.runLater(new Runnable() {
@Override public void run() {
recentList.getItems().add(Integer.toString(counter));
}
});
}
}}).start();

最佳答案

使用 Platform.runLater() 是正确的方法。您还可以将 Integer.toString(counter) 的 String 结果存储在后台线程(而不是 UI 线程)中。顺便说一句,您应该使用 String.valueOf (StackOverflow 上有一个线程讨论了它)。

假设您的 UI 由于(非常简单的)循环的执行速度而卡住。

您还应该看看Concurrency in JavaFX

关于java - 在 JavaFx 中向 ListView 添加项目...线程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30757527/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com