0
我知道這可以做到,因爲我在一年前設法做到了這一點,但從那時起我不必這樣做。無論如何,我想要做的是當一個按鈕被點擊時,它會在已有的applet上創建一個新的applet;有點像舊的閃光電子遊戲。我幾乎可以肯定它使用了諸如revalidate()或repaint()之類的方法,但我仍然無法使其工作。另外,我將容器設置爲全局變量,所以我可以在actionPerformed方法中對其進行編輯。更新容器以顯示新的JApplet
public void actionPerformed(ActionEvent e)
{
if(e.getSource() == about)
{
c.removeAll();
About a = new About();
c.add(a);
c.revalidate();
}
else if(e.getSource() == start_game)
System.out.println("Start - Coming Soon");
else if(e.getSource() == highscores)
System.out.println("HighScores - Coming Soon");
}
我知道問題在actionPerformed方法中,但不知道我在做什麼錯誤。我試圖做的是從當前容器中刪除所有內容,添加About(這也是一個JApplet),並重新驗證/重繪它(兩種方法都不起作用)。
如果任何人有JApplet中的任何專業知識或知道這個問題,我將不勝感激任何迴應。
改爲使用'CardLayout'。 – 2014-10-07 17:07:14