Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在执行其他任务后将字符串附加到JText区域_Java_Swing_Sockets_Append_Jtextarea - Fatal编程技术网

Java 在执行其他任务后将字符串附加到JText区域

Java 在执行其他任务后将字符串附加到JText区域,java,swing,sockets,append,jtextarea,Java,Swing,Sockets,Append,Jtextarea,只有在启动服务器和客户端连接后,才能将所有字符串附加到文本区域。所以我想一步一步地把它显示为我的代码。如何解决?您正在阻止事件调度线程,阻止它更新屏幕 请查看以了解更多详细信息 我建议您使用SwingWorker在后台线程中执行套接字代码,并使用SwingWorker的功能安全地更新UI。有关更多详细信息,请参阅 类似于我通过单击按钮启动服务器,当单击时,它看起来像一个切换按钮,只有在客户端上单击“连接”按钮后,它才是正常的btn。 public void doConnect(){

只有在启动服务器和客户端连接后,才能将所有字符串附加到文本区域。所以我想一步一步地把它显示为我的代码。如何解决?

您正在阻止事件调度线程,阻止它更新屏幕

请查看以了解更多详细信息

我建议您使用
SwingWorker
在后台线程中执行套接字代码,并使用
SwingWorker
的功能安全地更新UI。有关更多详细信息,请参阅


类似于

我通过单击按钮启动服务器,当单击时,它看起来像一个切换按钮,只有在客户端上单击“连接”按钮后,它才是正常的btn。
public void doConnect(){
        try{
            statusArea.append("Starting server.....\n");
            serverSocket = new ServerSocket(5555);
            statusArea.append("Server started.\n");
            statusArea.append("Waiting for client connection....\n");
            socket = serverSocket.accept();
            statusArea.append("Client connected.\n");
            inStream = new ObjectInputStream(socket.getInputStream());
        } catch (IOException e){
            e.printStackTrace();
        }
    }