java命名空间javax.swing类jcomponent的类成员方法:
registerkeyboardaction定义及介绍
本文导语:
registerkeyboardaction
public void registerkeyboardaction(actionlistener anaction,
string acommand,
keystroke akeystroke,
int acondition)
此方法现在已过时,对于类似的操作...
registerkeyboardaction
public void registerkeyboardaction(actionlistener anaction,
string acommand,
keystroke akeystroke,
int acondition)
- 此方法现在已过时,对于类似的操作,请结合使用
getactionmap()
和 getinputmap()
。例如,要将 keystroke
akeystroke
绑定到 action
anaction
,现在使用:
component.getinputmap().put(akeystroke, acommand);
component.getactionmap().put(acommmand, anaction);
以上假定您希望绑定适用于 when_focused
。要为其他焦点状态注册绑定,可使带有整数参数的 getinputmap
方法。
注册一个新的键盘动作。如果出现一个与 akeystroke
注册
iis7站长之家的键事件并且 acondition
经过了验证,则调用 anaction
。keystroke
对象定义了键盘键和一个或多个修改键(alt、shift、ctrl、meta)的特定组合。
acommand
将在传递的事件(如果指定)中进行设置。
acondition
可以为:
- when_focused
- 仅在发生键击、同时组件具有焦点时才调用该动作。
- when_in_focused_window
- 当发生键击、同时组件具有焦点时,或者组件处于具有焦点的窗口中时调用该动作。注意,该组件无需是该窗口的直接子级,它可以处于窗口包含层次结构中的任意位置。换句话说,只要窗口中的任意 组件具有焦点,就调用向此组件注册的动作。
- when_ancestor_of_focused_component
- 当发生键击、同时组件具有焦点时,或者该组件是具有焦点的组件的祖先时调用该动作。
这种键击和条件的组合允许您为指定的键击+修改键组合定义高级别(语义)的动作事件(使用 keystroke 类),并导向具有焦点的组件的父组件或子组件,或者该组件本身。换句话说,在任意的组件层次结构中,可将任意的键组合导向层次结构中的适当组件,并调用具体的方法(通常通过适配器对象的方式)。
如果已经使用相同的 charcode 和修改键为接收容器注册了某个动作,则 anaction
将取代该动作。
- 参数:
anaction
- 要注册的 action
acommand
- 要在传递的事件中设置的命令akeystroke
- 与动作绑定的 keystroke
acondition
- 要符合的条件,见上文- 另请参见:
keystroke