[英]Java - How can I append to a jTextArea from a socket?
因此,我決定嘗試在ServerSocket / Socket即時通訊程序上工作,以熟悉如何使用ServerSockets和Sockets。 我目前仍在應用程序的服務器端工作,並且無法在GUI上獲取jTextArea來更新從客戶端程序發送的信息。
這是我的代碼:
對於事物的Socket方面(ServerSocket類):
while (shouldRun) {
inputMessage = (String)input.readObject();
new jMessengerServerGUI().updateFeed(inputMessage);
System.out.println(inputMessage);
}
對於GUI(jMessengerServerGUI類):
public void updateFeed(String updateMessage) {
txtServerFeed.append(updateMessage);
System.out.println(updateMessage);
}
這些方法位於單獨的類中,在其中可以完美地接收和發送字符串inputMessage,並在控制台中將其打印出來。 問題在於更新jTextArea txtServerFeed。
從外部類調用時,如何最好地實現對TextArea的寫入?
您需要使您的應用程序成為多線程。 Server&Socket工作在單獨的線程而不是UI-Thread的地方;
您可以看到該示例: https : //github.com/khirulbasher/Multithreaded-Server-Client
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.