InputMap
Class InputMap
- java.lang.Object
-
- javax.swing.InputMap
- All Implemented Interfaces:
- Serializable
- Direct Known Subclasses:
- ComponentInputMap, InputMapUIResource
public class InputMap extends Object implements Serializable
InputMap
provides a binding between an input event (currently only KeyStroke
s are used) and an Object
. InputMap
s are usually used with an ActionMap
, to determine an Action
to perform when a key is pressed. An InputMap
can have a parent that is searched for bindings not defined in the InputMap
.
As with ActionMap
if you create a cycle, eg:
InputMap am = new InputMap(); InputMap bm = new InputMap(): am.setParent(bm); bm.setParent(am);some of the methods will cause a StackOverflowError to be thrown.
- Since:
- 1.3
Constructors
InputMap
public InputMap()
Creates an InputMap
with no parent and no mappings.
Methods
setParent
public void setParent(InputMap map)
Sets this InputMap
's parent.
- Parameters:
-
map
- theInputMap
that is the parent of this one
getParent
public InputMap getParent()
Gets this InputMap
's parent.
- Returns:
- map the
InputMap
that is the parent of this one, or null if thisInputMap
has no parent
put
public void put(KeyStroke keyStroke, Object actionMapKey)
Adds a binding for keyStroke
to actionMapKey
. If actionMapKey
is null, this removes the current binding for keyStroke
.
get
public Object get(KeyStroke keyStroke)
Returns the binding for keyStroke
, messaging the parent InputMap
if the binding is not locally defined.
remove
public void remove(KeyStroke key)
Removes the binding for key
from this InputMap
.
clear
public void clear()
Removes all the mappings from this InputMap
.
keys
public KeyStroke[] keys()
Returns the KeyStroke
s that are bound in this InputMap
.
size
public int size()
Returns the number of KeyStroke
bindings.
allKeys
public KeyStroke[] allKeys()
Returns an array of the KeyStroke
s defined in this InputMap
and its parent. This differs from keys()
in that this method includes the keys defined in the parent.
© 1993–2017, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.