等待JFrame,然后从中检索信息

时间:2016-04-05 07:02:54

标签: java swing jframe

首先,我是Java的新手,你可能会猜到。提前谢谢。

我目前正在编写一个使用Java进行作业的棋盘游戏。有人类和计算机播放器类,GUI只在人类播放器类中。在人类中,我使用一个名为“UI”的类来扩展JFrame,用户在其中选择一个片段。

此UI类等待按下enter按钮,然后将'done'变量设置为true。在人类玩家类中,我创建了这个UI然后在while循环中等待,在获取移动的X / Y位置之前连续检查此布尔值。

while (!input.moveEntered());
move.setPosition(input.getX(), input.getY());

如果while循环不为空,这似乎只能起作用。如果我在那里添加一个print语句就可以了。 似乎有更好的方法来解决这个问题。我查看了对话框,但每次进入移动时我都不会关闭窗口。

感谢阅读。

1 个答案:

答案 0 :(得分:2)

你永远不应该忙着等待;在你的情况下,我会显示一个模态JDialog。当用户输入他们的输入时,setVisible(true)方法将在没有忙等待的情况下结束。

或许我误解了你的问题,你只需要在主JFrame中定义一个事件监听器来处理用户输入。看一下 http://www.tutorialspoint.com/swing/swing_event_listeners.htm

相关问题