我的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