Eri*_*uer 8 java swing event-dispatch-thread
我有以下用例:
我在线程A(不是EDT)中执行代码.然后我想问用户一个问题,但这必须在EDT上完成,因为它涉及Swing代码(打开一个对话框等).最后,我想将用户的答案传递给线程A,因此它可以继续.
我很难找到一个好方法将用户的答案传递给线程A.你怎么做到这一点?
jta*_*orn 18
FutureTask<Integer> dialogTask = new FutureTask<Integer>(new Callable<Integer>() {
@Override public Integer call() {
return JOptionPane.showConfirmDialog(...);
}
});
SwingUtilities.invokeLater(dialogTask);
int result = dialogTask.get();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1502 次 |
| 最近记录: |