gpt4 book ai didi

java - Swing工作线程说父类(super class)中没有Process()方法

转载 作者:行者123 更新时间:2023-12-01 16:54:00 26 4
gpt4 key购买 nike

我正在尝试在更新 GUI 时实现 SwingWorker 线程。我知道 process() 方法是由 EDT 执行的,因此如果我需要更新 GUI,我应该将更新代码放在该方法中。

但是,当我尝试重写 process() 方法时,出现错误:方法未实现父类(super class)型中的方法。

请问我是否遗漏了什么或者 Process() 方法不再存在?

class SwingWorkerThread extends SwingWorker<String, String> {

@Override
protected String doInBackground() throws Exception {
String Pub = "A";

for (int i = 0; i < 20; i++) {
Pub = String.valueOf(i);

publish(Pub);
}

return Pub;
}

@Override
protected String process(String h) {
System.out.println(Pub);
MainFrame.TextArea.setText(Pub);
return null;
}

@Override
protected void done() {
String status;
status = get();
try {

System.out.println("Done");

} catch (Exception ex) {
System.out.println("Error: " + ex);
}
}

}

最佳答案

没有String process(String)方法SwingWorker 。有一个void process(List<V>) ,这可能就是您想要的。

(这仍然无法解决 Pub 是局部变量并且在该方法中不可见的事实。)

关于java - Swing工作线程说父类(super class)中没有Process()方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35260732/

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