我正在编写一个简单的聊天程序,该程序在 JTabbedPane
的不同选项卡中显示不同的对话框。我使用 JTextArea
来显示该对话框。我向选项卡添加了一个 JTextArea
,如下所示:
JTextArea referenceToAppend = new JTextArea();
JTabbedPane.addTab(title,new JPanel(new JScrollBar(referenceToAppend)));
我将引用 referenceToAppend
放入 List
中,然后当我需要附加文本时,我会这样做
以下:
List.get(index).append(textForAppend);
问题是:我的应用程序变得无响应。我怎么解决这个问题?我在论坛上查了很多资料,当然还有Oracle。我找不到我需要的东西。也许我不专心,或者我不明白一些简单的事情。如果有人可以提供一个简单的示例或链接到讨论此问题的另一个论坛,我将非常感激。
最佳答案
看看SwingWorker 。它允许您在后台线程中执行操作并向事件调度线程报告信息。如果您需要阻止套接字读取,则需要在后台线程上执行此操作以保持 UI 响应。
关于java - 更新 JTabbedPane 组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9856130/