ContextMenu.ProcessCmdKey(Message, Keys, Control) 메서드

정의

명령 키를 처리합니다.

protected public:
 virtual bool ProcessCmdKey(System::Windows::Forms::Message % msg, System::Windows::Forms::Keys keyData, System::Windows::Forms::Control ^ control);
protected internal virtual bool ProcessCmdKey(ref System.Windows.Forms.Message msg, System.Windows.Forms.Keys keyData, System.Windows.Forms.Control control);
override this.ProcessCmdKey : Message * System.Windows.Forms.Keys * System.Windows.Forms.Control -> bool
Protected Friend Overridable Function ProcessCmdKey (ByRef msg As Message, keyData As Keys, control As Control) As Boolean

매개 변수

msg
Message

처리할 창 메시지를 나타내는 참조로 전달되는 A Message입니다.

keyData
Keys

처리할 Keys 키를 나타내는 값 중 하나입니다.

control
Control

명령 키가 적용되는 컨트롤입니다.

반품

true문자가 컨트롤에 의해 처리되었으면 이고, 그렇지 않으면 . false

설명

이 메서드는 명령 키를 처리하기 위해 메시지 전처리 중에 호출됩니다. 명령 키는 항상 일반 입력 키보다 우선하는 키입니다. 명령 키의 예로는 액셀러레이터 및 메뉴 바로 가기가 있습니다. 메서드는 명령 키를 처리했음을 나타내거나 false 키가 명령 키가 아님을 나타내기 위해 반환 true 해야 합니다. 이 메서드는 컨트롤이 Windows Forms 애플리케이션 또는 ActiveX 컨트롤로 호스팅되는 경우에만 호출됩니다.

메서드는 ProcessCmdKey 먼저 컨트롤 ContextMenu에 있는지 여부를 결정하며, 있는 경우 명령 키를 처리할 수 있도록 합니다 ContextMenu . 명령 키가 메뉴 바로 가기가 아니고 컨트롤에 부모가 있는 경우 키는 부모의 ProcessCmdKey 메서드로 전달됩니다. 그 결과 명령 키가 컨트롤 계층 구조 위로 "버블링"됩니다. 사용자가 누른 키 외에도 키 데이터는 키와 동시에 누른 한정자 키를 나타냅니다. 한정자 키에는 Shift, Ctrl 및 Alt 키가 포함됩니다.

상속자 참고

파생 클래스에서 메서드를 재정의 ProcessCmdKey(Message, Keys) 하는 경우 컨트롤이 키를 처리했음을 나타내기 위해 반환 true 되어야 합니다. 컨트롤에서 처리되지 않는 키의 경우 기본 클래스의 ProcessCmdKey(Message, Keys) 메서드를 호출한 결과가 반환되어야 합니다. 컨트롤이 이 메서드를 재정의해야 하는 경우는 거의 없습니다.

적용 대상