Java swing组件被冻结了

时间:2012-09-29 15:38:37

标签: java swing netbeans client-server

我正在netbeans中创建一个服务器 - 客户端应用程序项目。我使用netbeans gui builder在我的JFrame上制作了一些Jpanel和其他一些东西(按钮,文本字段,文本区域,菜单)。 当我按下新服务器按钮时,整个JFrame及其所有组件都被冻结,但服务器 - 客户端部分正在后台运行。我认为线程或东西存在问题, 但我真的不明白我应该做什么。

1 个答案:

答案 0 :(得分:6)

问题可能是您的服务器 - 客户端代码实际上是 而不是 在后台工作,而是处理Swing事件线程。您可以使用SwingUtilities方法对此进行测试:SwingUtilities.isEventDispatchThread()

此外:

  • 您是否使用SwingWorker进行后台工作?
  • 您是否正在使用后台线程进行任何join()来电?
  • 您是否正在等待SwingWorkers get()方法?

您的代码的详细信息可能会帮助我们为您提供更具体的建议。要了解您应该做什么,请阅读Lesson: Concurrency in Swing