我在这里找不到任何类似的答案,但如果这太针对我自己的问题,我深表歉意。
我正在使用 Java 构建一个简单的游戏,它既有命令行界面又有 GUI(使用命令行标志激活)。游戏的编写方式是游戏逻辑(模型)具有对输入(控制器)和输出(视图)的引用,但输入或输出都没有对模型的引用(这是一个要求)。因此,游戏流程由应用程序模型中的循环控制,类似于:
while (!gameFinished) {
InputType in = input.getUserInput(); //1
performAction(in);
}
现在我正在尝试为此构建一个 Swing GUI(不是我有经验的东西),我正在努力了解它如何与事件侦听一起工作。理想情况下,当按下按钮时(新游戏、保存游戏、退出游戏等),InputType 将被发送到模型(基本上与注释行相同)以进行相应处理。但如果它不包含对模型的引用,它就不能“发送”输入类型。我想我正在寻找一个与模型“请求”输入而不是“监听”它一起工作的 GUI。
这可能吗?如果是这样,任何人都可以为我提供任何有用的资源来解决这个问题吗?如果没有,将不胜感激解释或潜在的替代解决方案建议。