0

我想用 Swing 编写一个简单的学习游戏。

我想知道在 UI 屏幕之间切换的最佳方式是什么。

例如,我将有一个主菜单屏幕,然后当用户按下该屏幕上的一个按钮时,我会将整个屏幕换成一个完全不同的屏幕。

然后,可以随时换入任意屏幕,并且它们的所有事件处理程序将被重新激活,而非活动屏幕的事件处理程序将被停用。

我将为每个“屏幕”使用什么类型的 Swing 组件/控件。这甚至可行吗?

4

3 回答 3

8

您可以考虑为此目的使用CardLayout 。

每个“屏幕”都可以制成一个单独的面板。然后你需要一个带有卡片布局的容器面板。您会将所有屏幕添加到该面板。卡片之间的切换很容易,在链接的教程中进行了演示。

于 2010-03-27T17:10:09.190 回答
1

您也可以使用JTabbedPane,这样每个屏幕都用一个按钮连接 :-)

于 2010-03-27T17:16:48.720 回答
1

您可能不需要重新激活侦听器(尽管事物的“业务”模型结束可能想要检查状态)。简单的开关面板。

于 2010-03-27T17:18:14.540 回答