Udostępnij za pośrednictwem


ContextMenu.ProcessCmdKey(Message, Keys, Control) Metoda

Definicja

Przetwarza klucz polecenia.

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

Parametry

msg
Message

Element Message, przekazany przez odwołanie, który reprezentuje komunikat okna do przetworzenia.

keyData
Keys

Keys Jedna z wartości reprezentujących klucz do przetworzenia.

control
Control

Kontrolka, do której ma zastosowanie klucz polecenia.

Zwraca

Boolean

true jeżeli znak został przetworzony przez kontrolkę; w przeciwnym razie , false.

Uwagi

Ta metoda jest wywoływana podczas wstępnego przetwarzania komunikatów w celu obsługi kluczy poleceń. Klucze poleceń to klucze, które zawsze mają pierwszeństwo przed zwykłymi kluczami wejściowymi. Przykładami kluczy poleceń są akceleratory i skróty menu. Metoda musi wrócić true , aby wskazać, że przetworzyła klucz polecenia lub false wskazać, że klucz nie jest kluczem polecenia. Ta metoda jest wywoływana tylko wtedy, gdy kontrolka jest hostowana w aplikacji Windows Forms lub jako kontrolka ActiveX.

Metoda ProcessCmdKey najpierw określa, czy kontrolka ma ContextMenuelement , a jeśli tak, umożliwia ContextMenu przetwarzanie klucza polecenia. Jeśli klucz polecenia nie jest skrótem menu, a kontrolka ma element nadrzędny, klucz jest przekazywany do metody elementu nadrzędnego ProcessCmdKey . Efekt netto polega na tym, że klucze poleceń są "bąbelkowe" w górę hierarchii sterowania. Oprócz klawisza naciśniętego przez użytkownika dane klucza wskazują również, które, jeśli istnieją, klawisze modyfikujące zostały wciśnięte w tym samym czasie co klawisz . Klawisze modyfikujące obejmują klawisze SHIFT, CTRL i ALT.

Uwagi dotyczące dziedziczenia

Podczas zastępowania ProcessCmdKey(Message, Keys) metody w klasie pochodnej kontrolka powinna wrócić true , aby wskazać, że przetworzyła klucz. W przypadku kluczy, które nie są przetwarzane przez kontrolkę, należy zwrócić wynik wywołania metody klasy ProcessCmdKey(Message, Keys) bazowej. Kontrolki rzadko, jeśli kiedykolwiek, muszą zastąpić tę metodę.

Dotyczy