模块  java.desktop
软件包  javax.swing

Class InputMap

  • 实现的所有接口
    Serializable
    已知直接子类:
    ComponentInputMapInputMapUIResource

    public class InputMap
    extends Object
    implements Serializable
    InputMap提供输入事件(当前仅使用KeyStroke )和Object InputMap s通常与ActionMap一起使用,以确定按下某个键时要执行的Action InputMap可以在父级中搜索未在InputMap定义的InputMap

    ActionMap如果您创建一个循环,例如:

      InputMap am = new InputMap();
       InputMap bm = new InputMap():
       am.setParent(bm);
       bm.setParent(am); 
    某些方法会导致抛出StackOverflowError。
    从以下版本开始:
    1.3
    另请参见:
    Serialized Form
    • 构造方法详细信息

      • InputMap

        public InputMap()
        创建一个没有父级和没有映射的 InputMap
    • 方法详细信息

      • setParent

        public void setParent​(InputMap map)
        设置此 InputMap的父级。
        参数
        map - InputMap是这个的父级
      • getParent

        public InputMap getParent()
        获取此 InputMap的父级。
        结果
        映射作为此父项的父项的 InputMap ,如果此 InputMap没有父项, InputMap null
      • put

        public void put​(KeyStroke keyStroke,
                        Object actionMapKey)
        添加keyStrokeactionMapKey的绑定。 如果actionMapKey为null,则删除keyStroke的当前绑定。
        参数
        keyStroke - a KeyStroke
        actionMapKey - 动作映射关键点
      • get

        public Object get​(KeyStroke keyStroke)
        返回 keyStroke的绑定,如果绑定未在本地定义,则向父 InputMap发送消息。
        参数
        keyStroke - 获取绑定的 KeyStroke
        结果
        绑定 keyStroke
      • remove

        public void remove​(KeyStroke key)
        InputMap删除 key的绑定。
        参数
        key - 要删除绑定的 KeyStroke
      • clear

        public void clear()
        InputMap删除所有映射。
      • keys

        public KeyStroke[] keys()
        返回此 KeyStroke中绑定的 InputMap
        结果
        所述的数组 KeyStroke S中的值为在此结合 InputMap
      • size

        public int size()
        返回 KeyStroke绑定的数量。
        结果
        KeyStroke绑定的数量
      • allKeys

        public KeyStroke[] allKeys()
        返回此InputMap及其父级中定义的KeyStroke的数组。 这与keys()不同之keys()于此方法包括父级中定义的键。
        结果
        InputMap及其父级中定义的 KeyStroke的数组