我目前正在使用java编写游戏,并使用界面来处理游戏的输入/输出。我目前有一个正常的文本界面。我正在使用类似于以下内容的代码:
while (moveExists())
{
String in = interface.getInput();
processInput(in);
interface.displayOutput(this.getState);
}
纯文本接口有效,因为它暂停等待输入,但我不确定如何在GUI实现中完成类似的行为。我如何“等待”来自actionListener的输入?
如果没有,我可能会使用不像游戏循环而更像是有限状态机的代码,这样我就不需要处理两个不同的线程来协调他们的行为。
答案 0 :(得分:0)
您可以简单地启动一个GUI(它有自己的独立线程),其中包含一个文本区域,可能还有一个按钮或类似的东西,然后您将ActionListener添加到文本区域或按钮,然后执行您需要的代码触发监听器时(即已插入某些代码或单击按钮)。
另一个故事,如果你还有另一个'背景'线程需要在循环中运行......