【发布时间】:2013-02-18 17:12:03
【问题描述】:
我有以下情况。有一个类 JFrame1 执行一系列指令并将焦点放在另一个 JFrame2 上,然后继续。当 JFrame2 获得焦点时,JFrame1 应该期望 JFrame2 处理而不是执行以下指令。怎么办?
JFrame1{
//instruction 1
//instruction 2
// ....
//instruction 6
JFrame2 starts
[waiting for results of JFrame2]
//instruction 7
//instruction 8}
JFrame1 应在恢复焦点时执行指令 7 和 8
【问题讨论】:
-
Swing 是单线程的,你不能为此使用线程。您对此的思考模型都是错误的,不同的窗口并没有真正并行执行操作,它们会调度串行处理的事件。使用事件在 GUI 组件之间进行通信。
-
您一遍又一遍地询问same damn question。请把这个关掉。仅在 一个 问题和 一个 问题中要求澄清。这对支持本网站的志愿者不公平。
标签: java multithreading swing jframe task