Default Button after dispose and setVisible

Posted by DaDaDom on Stack Overflow See other posts from Stack Overflow or by DaDaDom
Published on 2010-04-28T12:53:12Z Indexed on 2010/04/28 13:33 UTC
Read the original article Hit count: 321

Filed under:
|

Hi,

given the following code:

public class DialogTest implements ActionListener {
  public static void main(String[] args) {DialogTest g = new DialogTest();}

  public DialogTest() {
    JButton b1 = new JButton("Button A");
    b1.addActionListener(this);
    JDialog d = new JDialog();
    d.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
    JPanel p = new JPanel();
    p.add(b1);
    d.add(p);
    d.getRootPane().setDefaultButton(b1);
    d.pack();
    d.setVisible(true);
    d.dispose();
    d.pack();
    d.setVisible(true);
  }

  public void actionPerformed(ActionEvent e) {System.out.println("hello");}
}

Shouldn't pressing the Enter key write something to the console? According to the docs (http://java.sun.com/javase/7/docs/api/java/awt/Window.html#dispose()):

The Window and its subcomponents can be made displayable again by rebuilding the native resources with a subsequent call to pack or show. The states of the recreated Window and its subcomponents will be identical to the states of these objects at the point where the Window was disposed

Is this intended behaviour?

© Stack Overflow or respective owner

Related posts about java

Related posts about awt