<分区>
我试图在按下 gui 上的按钮时让我的程序跳出 while 循环。
我有一个线程启动 GUI 线程并等待直到按下应用按钮。 这是代码:
public void run() {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
public void run() {
createAndShowGui();
}
});
// Wait until apply button clicked and set team
while(true) {
applyClicked = gui.getApplyClicked();
if (applyClicked == true) {
teamYellow = gui.getTeam();
break;
}
}
然而,即使我单击应用并且 applyClicked 在 GUI 中变为真,它也不会执行该 if 语句。
但是,如果我在 while true 下方添加打印行,它就可以正常工作。
我还调试了它逐行运行并且变量设置正确并且它可以工作。
为什么当我没有 println 时这不起作用?跟线程有关系吗?
谢谢