当只有隐形,然后可见时,JFrame移动

时间:2015-01-24 13:33:36

标签: java swing jframe

我有一个JFrame,我有时需要隐藏,然后再次可见。我注意到,只要发生这种情况,它会在屏幕上移动一点。我甚至通过剥离除JFrame之外的所有代码来测试为什么会发生这种情况,并调用setVisible(false),然后是true,并且发生了同样的事情。 这是一个最小的例子,我包括OK按钮来表示我想在使框架不可见和可见之间完成的其他事情:

public class CopyOfPanel {
    private JFrame frame;
    private JButton buttn;                              //the ok button

    public CopyOfPanel(){
        frame = new JFrame();
        OKHandler ok = new OKHandler();
        buttn = new JButton("OK");
        buttn.addActionListener(ok);                    //add the listener
        frame.add(buttn);   

        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        frame.setSize(600,400);
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);
    }   
    public static void main (String[] args){
        CopyOfPanel copy = new CopyOfPanel();
    }

private class OKHandler implements ActionListener {     //for the ok button
    public void actionPerformed(ActionEvent event){     
        frame.setVisible(false); 
        frame.setVisible(true);
    }}
}

请问这是否易于预防?

0 个答案:

没有答案