我正在NetBeans中創建一個服務器客戶端應用程序項目。我使用NetBeans GUI構建器在JFrame上製作了一些Jpanel和其他一些東西(按鈕,textfield,textarea,菜單)。 當我推新服務器按鈕時,整個JFrame及其所有組件都被凍結,但服務器 - 客戶端部分正在後臺工作。我認爲線程有問題, 但我還沒有真正明白我應該做什麼。Java swing組件被凍結
0
A
回答
6
的問題可能是您的服務器 - 客戶端代碼就是不在後臺工作,但Swing事件線程上,而不是工作。你可以用SwingUtilities方法測試這個你知道:SwingUtilities.isEventDispatchThread()
另外:
- 您是否使用了SwingWorker類做背景的工作?
- 你是否在做任何帶有後臺線程的
join()
調用? - 你在等SwingWorkers
get()
方法嗎?
你的代碼的細節可能會幫助我們給你更具體的建議。要了解你應該做什麼,請閱讀,Lesson: Concurrency in Swing
+0
我設法找出了我的問題。我犯了一個愚蠢的錯誤。 當我想啓動服務器線程時,我調用run方法而不是start。這就是爲什麼它被凍結。儘管如此,感謝您的建議。 – user1707095
+0
@ user1707095:我的建議然後是正確的:通過直接調用'run()'你可以在事件線程上調用長時間運行的代碼。 –
相關問題
- 1. Java Swing - UI凍結
- 2. 的Java Swing GUI凍結
- 3. Java Swing按鈕凍結程序
- 4. Java Swing GUI重新聚焦時凍結
- 5. Java Swing GUI凍結 - 觀察者模式
- 6. Swing應用程序凍結
- 7. 的Java Swing組件
- 8. Java Swing - 分組組件
- 9. java進程被凍結(?)在linux上
- 10. Java圖形用戶界面被凍結
- 11. Java JFrame凍結
- 12. EventListener凍結(Java)
- 13. java inputStream凍結
- 14. Netbeans Java Swing組件冗餘
- 15. Java Swing和組件定位
- 16. Java Swing ghost/doubled組件?
- 17. Java swing組件序列化
- 18. 未顯示Java Swing組件
- 19. Java Swing - 半透明組件
- 20. 建議Java Swing組件庫
- 21. Java Swing MVC動態組件
- 22. Java swing組件實例化
- 23. Java Swing組件放置
- 24. Java/swing:控制檯組件?
- 25. 的Java Swing組件刷新
- 26. Java Swing:居中組件
- 27. java Swing應用程序凍結時調用jpcapCaptor.openDevice方法
- 28. Java Swing多線程和用戶界面凍結
- 29. Java Swing:圖形用戶界面凍結 - jstack解釋
- 30. 調用modelToView()方法凍結Java Swing應用程序
代碼或它沒有發生。 –