繁体   English   中英

JTabbedPane + MultiThreading:在新线程中打开选项卡

[英]JTabbedPane+MultiThreading: Open tab in a new thread

美好的一天,我想在新的线程中使用Java swing打开选项卡,它本来有机会运行耗时的任务以在选项卡之间进行切换。 试了一下,该选项卡的副本实现了Runnable接口,但是新线程无效(在调试器中,它开始挂起大约1秒钟,并被杀死),因为我了解构造函数的工作原理,并且所有内容摇摆摆在其主要流量中。 我读过有关SwingWorker的文章,但不太了解如何将其应用于我的问题。 如果可以,请显示示例。 提前致谢。

PS这是网络应用程序,“负载”将用作服务器的工作。 也就是说,赋予用户在选项卡之间切换的能力,直到当前选项卡成为连接为止。

您应该尝试将执行实际工作的代码与指定GUI的代码分开。 您应该搜索例如“模型-视图-控制器模式”(MVC)。

这样,GUI代码可以或多或少地在Swing / AWT的事件分派器线程(EDT)中运行。 进行实际工作的代码应尽可能独立于GUI。 现在,您可以选择在专用线程中运行它,或者选择最适合您整体应用程序体系结构的东西运行。

最后一部分将这两个(GUI和域逻辑)连接在一起,以便GUI触发工作程序代码或工作程序代码触发GUI更新,或者满足工作流程要求的任何内容。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM