Control.ProcessCmdKey(Message, Keys) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
处理命令键。
protected:
virtual bool ProcessCmdKey(System::Windows::Forms::Message % msg, System::Windows::Forms::Keys keyData);
protected virtual bool ProcessCmdKey (ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData);
abstract member ProcessCmdKey : Message * System.Windows.Forms.Keys -> bool
override this.ProcessCmdKey : Message * System.Windows.Forms.Keys -> bool
Protected Overridable Function ProcessCmdKey (ByRef msg As Message, keyData As Keys) As Boolean
参数
返回
如果字符已由控件处理,则为 true
;否则为 false
。
注解
在消息预处理期间调用此方法来处理命令键。 命令键是始终优先于常规输入键的键。 命令键的示例包括快捷键和菜单快捷方式。 该方法必须返回 true
以指示它已处理命令键,或 false
指示该键不是命令键。 仅当控件托管在Windows 窗体应用程序或 ActiveX 控件中时,才调用此方法。
该方法 ProcessCmdKey 首先确定控件是否具有一个 ContextMenu,如果是这样,则允许 ContextMenu 处理命令键。 如果命令键不是菜单快捷方式,并且控件具有父级,则键将传递给父 ProcessCmdKey 级的方法。 净效果是命令键“浮出水面”控件层次结构。 除了用户按下的键外,键数据还指示与键同时按下了哪些修饰键(如果有的话)。 修饰键包括 SHIFT、Ctrl 和 ALT 键。
继承者说明
重写 ProcessCmdKey(Message, Keys) 派生类中的方法时,控件应返回 true
以指示它已处理密钥。 对于控件未处理的键,应返回调用基类 ProcessCmdKey(Message, Keys) 方法的结果。 控件很少(如果有)需要重写此方法。