所以我正在制作的程序使用 2 个线程:一个用于 GUI,一个用于工作。
我希望工作线程/类的更新在 GUI 类的 JTextArea 上打印出来。我尝试的一切似乎都不起作用。我在将文本添加到 JTextArea 的行之后添加了行以在控制台上打印出文本,以确保它已到达该行,但每次控制台获取文本但 GUI 中的 JTextArea 没有发生任何更改。
public static void consoleText(String consoleUpdate){
GUI.console.append(consoleUpdate);
}
我在工作班上试过这个,但什么也没发生。有人知道如何解决我的问题吗?
编辑:
主程序.JAVA
public class main {
public static void main(String[] args) {
Thread t1 = new Thread(new GUI());
t1.start();
}
图形用户界面.JAVA
public class GUI extends JFrame implements Runnable{
public static JTextArea console;
private final static String newline = "\n";
public void run(){
GUI go = new GUI();
go.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
go.setSize(350, 340);
go.setVisible(true);
}
public GUI(){
setLayout(new FlowLayout());
console = new JTextArea(ConsoleContents, 15, 30);
add(console);
}
工作.JAVA
...{
consoleText("\nI want this text on the JText Area");
}
public static void consoleText(String consoleUpdate){
GUI.console.append(consoleUpdate);
}