![]() |
The Java Developers Almanac 1.4Order this book from Amazon. |
e621. Activating a Keystroke When Any Child Component Has FocusNormally, a keystroke registered on a component is activated when the component has the focus. This type of activation condition is calledWHEN_FOCUSED . It is possible to specify that a keystroke be
activated if it or any child or descendant component has the focus.
This type of keystroke activation condition is called
WHEN_ANCESTOR_OF_FOCUSED_COMPONENT .
An example where this type of keystroke activation condition is useful is in the case of a scrollpane that handles scrolling navigation keystrokes even when the child component has the focus. There are three types of activation conditions available:
// To create an action, see e855 Creating an Action // Register keystroke component.getInputMap(JComponent.WHEN_ANCESTOR_OF_FOCUSED_COMPONENT).put( KeyStroke.getKeyStroke("F2"), action.getValue(Action.NAME)); // Register action component.getActionMap().put(action.getValue(Action.NAME), action);
e607. Preventing a Component from Gaining the Focus e608. Preventing a Window from Gaining the Focus e609. Listening to All Focus Changes Between Components in an Application e610. Setting Focus Traversal Keys in a Component e611. Setting Focus Traversal Keys for the Entire Application e612. Moving the Focus to the Next or Previous Focusable Component e613. Modifying the Focus Traversal Order e614. Setting the Initial Focused Component in a Window e615. Finding the Next Focusable Component e616. Determining If a Focus Lost Is Temporary or Permanent e617. Determining the Opposite Component of a Focus Event e618. Validating a JTextField When Permanently Losing the Focus e619. Removing the Focus from the Application e620. Activating a Keystroke When Any Component in the Window Has Focus
© 2002 Addison-Wesley. |