我有多个类和线程需要写入Java Swing JScrollPane。在Android/Eclipse环境中,我使用了android.os.Message。在NetBeans/Windows环境中是否有类似的东西?这里就是我想从发送消息:Java类之间的消息传递如何最好地完成?
public class PrintStatusTask extends Thread {
PrintStatusTask(String name) {
this.name = name;
}
private void sendMessage(String s) {
// TODO: send message to jTextArea
}
public void run() {
...
sendMessage("Any message");
...
这是写作的从JFrame中它生活在JScrollPane的一个例子:
public class Controller extends javax.swing.JFrame implements Observer {
...
jTextArea.append(s);
...
SwingWorker的'process()'方法在EDT上运行,所以不需要使用'invokeLater()':http://download.oracle.com/javase/6/docs/api/javax /swing/SwingWorker.html – trashgod 2010-09-21 20:04:20
JScrollPane由另一个类中的后台任务或其所在的JFrame更新。写入JScrollPane似乎没有响应,但后台任务有很多工作要做,这就是为什么这是必需的。 – jacknad 2010-09-21 20:21:15
@trashgod你是对的 - 我忘记了。我正在考虑一个正常的线程。 – aperkins 2010-09-21 20:22:22