java.lang.Object javax.swing.InputMap
public class InputMap
InputMap
提供输入事件(目前只使用 KeyStroke
)和 Object
之间的绑定。InputMap
通常与 ActionMap
一起使用,以确定按下键时执行一个 Action
。InputMap
可以有一个父级,可搜索它来获得 InputMap
中未定义的绑定。
与 ActionMap
一同使用时,如果创建一个循环,例如:
InputMap am = new InputMap(); InputMap bm = new InputMap(): am.setParent(bm); bm.setParent(am);则某些方法将导致抛出 StackOverflowError。
构造方法摘要 | |
---|---|
InputMap() 创建一个没有父级和映射关系的 InputMap 。 |
方法摘要 | |
---|---|
KeyStroke[] |
allKeys() 返回在此 InputMap 及其父级中定义的 KeyStroke 组成的数组。 |
void |
clear() 从此 InputMap 中移除所有映射关系。 |
Object |
get(KeyStroke keyStroke) 返回 keyStroke 的绑定,如果该绑定不是本地定义的,则将此消息传递给父 InputMap 。 |
InputMap |
getParent() 获得此 InputMap 的父级。 |
KeyStroke[] |
keys() 返回绑定在此 InputMap 中的 KeyStroke 。 |
void |
put(KeyStroke keyStroke, Object actionMapKey) 将 keyStroke 的一个绑定添加到 actionMapKey 。 |
void |
remove(KeyStroke key) 从此 InputMap 中移除 key 的绑定。 |
void |
setParent(InputMap map) 设置此 InputMap 的父级。 |
int |
size() 返回 KeyStroke 绑定的数量。 |
从类 java.lang.Object 继承的方法 |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
构造方法详细信息 |
---|
public InputMap()
InputMap
。
方法详细信息 |
---|
public void setParent(InputMap map)
InputMap
的父级。
map
- 作为此 InputMap 的父级的
InputMap
public InputMap getParent()
InputMap
的父级。
InputMap
,如果此
InputMap
没有父级,则返回 null
public void put(KeyStroke keyStroke, Object actionMapKey)
keyStroke
的一个绑定添加到
actionMapKey
。如果
actionMapKey
为 null,则移除
keyStroke
的当前绑定。
public Object get(KeyStroke keyStroke)
keyStroke
的绑定,如果该绑定不是本地定义的,则将此消息传递给父
InputMap
。
public void remove(KeyStroke key)
InputMap
中移除
key
的绑定。
public void clear()
InputMap
中移除所有映射关系。
public KeyStroke[] keys()
InputMap
中的
KeyStroke
。
public int size()
KeyStroke
绑定的数量。
public KeyStroke[] allKeys()
InputMap
及其父级中定义的
KeyStroke
组成的数组。此方法与
keys()
的不同之处在于:此方法包括父级中定义的键。