使用 ExtJS 捕获功能键事件 (F1-F12)
Capture function key events (F1-F12) with ExtJS
如何监听功能键上的按键事件(F1、F2、F3 等 ) 与 ExtJS?
我正在尝试使用 F8 键激活触发字段。
我尝试覆盖 isSpecialKey
方法以添加 "specialKey" 事件但没有成功 - 我还尝试使用 Key.map
但这也没有触发任何东西。
谁能指出我正确的方向?
您可以根据特定功能键的已知键码检查事件的键码。为了方便起见,这些在 4.x 版本中作为预定义的静态变量存在于 Ext.event.Event
class in version 5.x and Ext.EventObject
中(在任何一种情况下, class / 原型都可以通过self
属性 在事件实例本身上)。
Ext.getBody().on('keydown', function(ev){
if(ev.getKey() === ev.self.F8)
Ext.Msg.show({ msg: 'F8 pressed!' });
});
» Fiddle - 请注意,您附加侦听器的组件应该具有焦点。
(在此示例中,应用程序 window)
如何监听功能键上的按键事件(F1、F2、F3 等 ) 与 ExtJS?
我正在尝试使用 F8 键激活触发字段。
我尝试覆盖 isSpecialKey
方法以添加 "specialKey" 事件但没有成功 - 我还尝试使用 Key.map
但这也没有触发任何东西。
谁能指出我正确的方向?
您可以根据特定功能键的已知键码检查事件的键码。为了方便起见,这些在 4.x 版本中作为预定义的静态变量存在于 Ext.event.Event
class in version 5.x and Ext.EventObject
中(在任何一种情况下, class / 原型都可以通过self
属性 在事件实例本身上)。
Ext.getBody().on('keydown', function(ev){
if(ev.getKey() === ev.self.F8)
Ext.Msg.show({ msg: 'F8 pressed!' });
});
» Fiddle - 请注意,您附加侦听器的组件应该具有焦点。
(在此示例中,应用程序 window)