我的applet出現問題:當我需要時它不刷新。Swing:setContentPane調用時沒有刷新接口
我試圖從一個界面屏幕切換到另一個,當我點擊按鈕。
我有一個
public class PixelRainEditorApp extends JApplet
和在init
SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
createGUI();
}
});
private void createGUI() {
a = new A(this);
this.setSize(800, 480);
}
然後,我有2類A和B延伸的JPanel
public A(JApplet parent) {
super(parent);
setOpaque(true);
setBackground(Color.BLACK);
this.parent.setContentPane(this);
}
當我點擊在一個按鈕查看A
@Override
public void actionPerformed(ActionEvent e) {
if(TAG.equalsIgnoreCase(e.getActionCommand())){
new B(this.baseParent);
}
}
和B是與A相同,但不同的圖像
public B(JApplet parent) {
super(parent);
setOpaque(true);
setBackground(Color.BLACK);
this.parent.setContentPane(this);
}
現在,當我想顯示這工作得很好,但是當我想要啓動B時的我點擊在A,沒有一個按鈕發生。 它只有當我調整窗口,B出現的大小... 我試圖無效或重繪和我的應用程序中的各種地方,但沒有任何反應
任何想法?
傑森
如何添加類B的實例? – 2010-12-13 08:40:05
編輯我的問題,我很確定它的東西這麼愚蠢:S – 2010-12-13 08:48:15
我不認爲這是愚蠢的,我在過去有類似的問題,我確信我的代碼是正確的。嘗試revalidate()方法(如果可用),嘗試不同的外觀和感覺(我不確定 - 我不記得,但我可能用這種方式「修復」我的問題)。 – 2010-12-13 08:58:35