2011-02-28 97 views
3

我有两个JFrames。第一个定义为public firstJframe,第二个定义为public static final jFrame。我想单击第一个JFrame上的按钮打开第二个JFrame。我怎样才能做到这一点?打开一个静态窗体/ jFrame点击按钮

.setVisible对此不起作用。我真的不知道如何继续这个。

+4

为更好地帮助,请发布SSCCE(http://pscode.org/sscce.html)。 – 2011-02-28 11:43:05

+2

.setVisible()肯定会起作用。显示一些代码,因为你的问题太模糊了,我们无法帮助你。 – MeBigFatGuy 2011-02-28 12:40:39

+1

你确定第二帧已被实例化吗?检查第二帧的大小:从另一帧打开帧应该没问题 – Heisenbug 2011-03-09 10:57:35

回答

0

尝试为要更新的对象调用revalidate()(在您的情况下为第二帧)。

例子:

JButton myButton = new JButton("Open new window"); 
    JFrame newFrame = new JFrame("New Window"); 

    myButton.addActionListener(new ActionListener() { 
    public void actionPerformed(ActionEvent e) { 
    newFrame.pack(); 
    newFrame.setVisible(true); 
    newFrame.revalidate(); 
    } 
    }); 

更新

如果还是不行,请尝试调用此:

newFrame.invalidate(); 
newFrame.validate(); 
-1

我建议: 下buttontype

this.dispose

new public static final jFrame.setvisible(true); 
相关问题