我正在尝试用Java制作游戏,而游戏则有菜单。菜单需要操作,并将导致更多的屏幕。我已经研究过使用卡片布局在面板之间切换它是否有效,除了每次切换面板时,它都会在一个新窗口中打开它以及一个空白面板。我想知道的是为什么它在新窗口中打开,为什么打开一个空白面板?
创建卡片布局:
public static CardLayout cards = (CardLayout)pnlMaster.getLayout();
getContentPane().add(pnlMaster);
pnlMaster.add(pnlMain, "Main Menu");
pnlMaster.add(pnlOptions, "Options");
pnlMaster.add(pnlGame, "Game");
cards.show(pnlMaster, "Main Menu");
单击选项按钮时会运行:
public class Options
{
JPanel pnlMain = Window.pnlMain;
JPanel pnlOptions = Window.pnlOptions;
JPanel pnlMaster = Window.pnlMaster;
Button graphics = Window.btnGraphics;
public Options()
{
Listener listener = new Listener();
pnlOptions.add(graphics);
Window.cards.show(pnlMaster,"Options");
graphics.addActionListener(listener);
}
}