Mailing Lists: Apple Mailing Lists

Image of Mac OS face in stamp
 
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Closing a dialog via keyboard



Bill Tschumy wrote:
I have a modal Find/Replace dialog that I would like to allow the user to close via the keyboard (either Cmd-W, or possible ESCAPE). Seems like in past versions of Java on OS X, hitting ESCAPE automatically closed the dialog. This no longer seems to be the case in 1.4.2.

I tried adding a single "Close" menu item to a menu attached to the dialog, but when I do this the menubar appears at the top of the dialog, not at the top of the screen like my main window's menubar does.

So what's the current proper way of getting Cmd-W (or Escape) to close a modal dialog?
You should put an action to root pane's ActionMap, something like
getRootPane().getActionMap().put("close",
new Action(){
  public void actionPerformed(ActionEvent e){
    dialog.dispose();
  }
});

then put a key binding into InputMap:
InputMap im = getRootPane().getInputMap(WHEN_ANCESTOR_OF_FOCUSED_COMPONENT);
im.put(KeyStroke.getKeyStroke(KeyEvent.VK_W, KeyEvent.VK_CONTROL), "close");


-- Illya Kysil, software developer Java/Delphi/C/C++/C#/Forth/Assembler ------------------------------------------------------------------------- No trees were harmed in the generation of this e-mail. A significant number of electrons were, however, severely inconvenienced.

Attachment: smime.p7s
Description: S/MIME Cryptographic Signature

 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Java-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:
http://lists.apple.com/mailman/options/java-dev/email@hidden

This email sent to email@hidden

References: 
 >Closing a dialog via keyboard (From: Bill Tschumy <email@hidden>)



Visit the Apple Store online or at retail locations.
1-800-MY-APPLE

Contact Apple | Terms of Use | Privacy Policy

Copyright © 2007 Apple Inc. All rights reserved.