Re: Window close & non-resizable in Netbeans GUI editor?
On Wed, 06 Aug 2008 15:20:45 +0100, Rexx Magnus <trashcan@uk2.net> wrote=
:
Right, managed to sort this out:
this.getFrame().setResizable(false);
this.getFrame().setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
this.getFrame().addWindowListener(new Closer());
In just after the initComponents(); line and added my Closer() routine=
=
elsewhere. One problem remains now though, when you close the window v=
ia =
the close button, this works - except if you're on a Mac and exit via =
=
the Quit menu (system menu, not one in the frame) it bypasses the =
routine.
I've tried adding:
app.addExitListener(new myExit());
Just after it, to see if I can get an ExitListener to catch it, using th=
e =
following based on an example in the javadocs:
class myExit implements Application.ExitListener {
public boolean canExit(EventObject e) {
Object source = (e != null) ? e.getSource() : null;
System.out.println("Canexit");
Component owner = (source instanceof Component) ? =
(Component)source : null;
int option = JOptionPane.showConfirmDialog(owner, "Really Ex=
it?");
return option == JOptionPane.YES_OPTION;
}
public void willExit(EventObject e) {
System.out.println("Willexit");
}
}
However, it's not working as far as I can tell. I did try putting it int=
o =
the other class directly as an override to the shutdown() method of the =
=
application, but couldn't get that to work either.