Freigeben über


CHotKeyCtrl-Klasse

Stellt die Funktionalität des allgemeinen Windows-Abkürzungstasten-Steuerelements bereit.

Syntax

class CHotKeyCtrl : public CWnd

Member

Öffentliche Konstruktoren

Name Beschreibung
CHotKeyCtrl::CHotKeyCtrl Erstellt ein CHotKeyCtrl-Objekt.

Öffentliche Methoden

Name Beschreibung
CHotKeyCtrl::Create Erstellt ein Hot Key-Steuerelement und fügt es an ein CHotKeyCtrl Objekt an.
CHotKeyCtrl::CreateEx Erstellt ein Hot Key-Steuerelement mit den angegebenen erweiterten Windows-Stilen und fügt es an ein CHotKeyCtrl Objekt an.
CHotKeyCtrl::GetHotKey Ruft den Virtuellen Schlüsselcode und die Modifiziererkennzeichnungen einer Abkürzungstaste aus einem Hot Key-Steuerelement ab.
CHotKeyCtrl::GetHotKeyName Ruft den Schlüsselnamen im lokalen Zeichensatz ab, der einem Hot Key zugewiesen ist.
CHotKeyCtrl::GetKeyName Ruft den Schlüsselnamen im lokalen Zeichensatz ab, der dem angegebenen virtuellen Schlüsselcode zugewiesen ist.
CHotKeyCtrl::SetHotKey Legt die Tastenkombination für ein Hotkey-Steuerelement fest.
CHotKeyCtrl::SetRules Definiert die ungültigen Kombinationen und die Standardmodifiziererkombination für ein Hot Key-Steuerelement.

Hinweise

Ein "Hot key control" ist ein Fenster, das es dem Benutzer ermöglicht, eine Abkürzungstaste zu erstellen. Eine "Abkürzungstaste" ist eine Tastenkombination, die der Benutzer drücken kann, um eine Aktion schnell auszuführen. (Ein Benutzer kann z. B. eine Abkürzungstaste erstellen, die ein bestimmtes Fenster aktiviert und zum Anfang der Z-Reihenfolge bringt.) Das Hot Key-Steuerelement zeigt die Auswahlmöglichkeiten des Benutzers an und stellt sicher, dass der Benutzer eine gültige Tastenkombination auswählt.

Dieses Steuerelement (und daher die Klasse) ist nur für Programme verfügbar, die CHotKeyCtrl unter Windows 95/98 und Windows NT, Version 3.51 und höher ausgeführt werden.

Wenn der Benutzer eine Tastenkombination ausgewählt hat, kann die Anwendung die angegebene Tastenkombination aus dem Steuerelement abrufen und die WM_SETHOTKEY Nachricht verwenden, um die Abkürzungstaste im System einzurichten. Jedes Mal, wenn der Benutzer von einem Teil des Systems aus die Hot-Taste drückt, empfängt das in der WM_SETHOTKEY Nachricht angegebene Fenster eine WM_SYSCOMMAND Nachricht, die SC_HOTKEY angibt. Diese Nachricht aktiviert das Fenster, das es empfängt. Die Abkürzungstaste bleibt gültig, bis die Anwendung, die WM_SETHOTKEY aufgerufen hat, beendet wird.

Dieser Mechanismus unterscheidet sich von der Hot Key-Unterstützung, die von der WM_HOTKEY Nachricht und den Windows RegisterHotKey - und UnregisterHotKey-Funktionen abhängt.

Weitere Informationen zur Verwendung CHotKeyCtrlfinden Sie unter "Steuerelemente und Verwenden von CHotKeyCtrl".

Vererbungshierarchie

CObject

CCmdTarget

CWnd

CHotKeyCtrl

Anforderungen

Header: afxcmn.h

CHotKeyCtrl::CHotKeyCtrl

Erstellt ein CHotKeyCtrl-Objekt.

CHotKeyCtrl();

CHotKeyCtrl::Create

Erstellt ein Hot Key-Steuerelement und fügt es an ein CHotKeyCtrl Objekt an.

virtual BOOL Create(
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parameter

dwStyle
Gibt die Formatvorlage des Hot Key-Steuerelements an. Wenden Sie eine beliebige Kombination von Steuerelementformatvorlagen an. Weitere Informationen finden Sie unter "Allgemeine Steuerelementstile" im Windows SDK.

rect
Gibt die Größe und Position des Hot Key-Steuerelements an. Es kann sich entweder um ein CRect-Objekt oder eine RECT-Struktur handeln.

pParentWnd
Gibt das übergeordnete Fenster des Hot Key-Steuerelements an, in der Regel ein CDialog. Er darf nicht NULL sein.

Nid
Gibt die ID des Hot Key-Steuerelements an.

Rückgabewert

Nonzero, wenn die Initialisierung erfolgreich war; andernfalls 0.

Hinweise

Sie erstellen ein CHotKeyCtrl Objekt in zwei Schritten. Rufen Sie zuerst den Konstruktor auf, und rufen Sie dann auf Create, wodurch das Hot Key-Steuerelement erstellt und an das CHotKeyCtrl Objekt angefügt wird.

Wenn Sie erweiterte Fensterstile mit Ihrem Steuerelement verwenden möchten, rufen Sie CreateEx anstelle von Create.

CHotKeyCtrl::CreateEx

Rufen Sie diese Funktion auf, um ein Steuerelement (ein untergeordnetes Fenster) zu erstellen und es dem CHotKeyCtrl Objekt zuzuordnen.

virtual BOOL CreateEx(
    DWORD dwExStyle,
    DWORD dwStyle,
    const RECT& rect,
    CWnd* pParentWnd,
    UINT nID);

Parameter

dwExStyle
Gibt die erweiterte Formatvorlage des zu erstellenden Steuerelements an. Eine Liste der erweiterten Windows-Stile finden Sie unter dem dwExStyle-Parameter für CreateWindowEx im Windows SDK.

dwStyle
Gibt die Formatvorlage des Hot Key-Steuerelements an. Wenden Sie eine beliebige Kombination von Steuerelementformatvorlagen an. Weitere Informationen finden Sie unter "Allgemeine Steuerelementstile" im Windows SDK.

rect
Ein Verweis auf eine RECT-Struktur , die die Größe und Position des zu erstellenden Fensters in Clientkoordinaten von pParentWnd beschreibt.

pParentWnd
Ein Zeiger auf das Fenster, das das übergeordnete Steuerelement ist.

Nid
Die Untergeordnete Fenster-ID des Steuerelements.

Rückgabewert

Ungleich Null, wenn erfolgreich, andernfalls 0 (Null).

Hinweise

Verwenden Sie CreateEx anstelle von "Erstellen ", um erweiterte Windows-Formatvorlagen anzuwenden, die durch die erweiterte Windows-Formatvorlage WS_EX_ angegeben werden.

CHotKeyCtrl::GetHotKey

Ruft die Kennzeichnungen für virtuelle Tasten und Modifizierer einer Tastenkombination aus einem Tastenkombinationssteuerelement ab.

DWORD GetHotKey() const;

void GetHotKey(
    WORD& wVirtualKeyCode,
    WORD& wModifiers) const;

Parameter

wVirtualKeyCode
[out] Virtueller Tastencode der Tastenkombination. Eine Liste der standardmäßigen virtuellen Schlüsselcodes finden Sie unter Winuser.h.

wModifiers
[out] Eine bitweise Kombination (OR) von Flags, die die Modifizierertasten in der Tastenkombination angeben.

Die Modifiziererkennzeichnungen sind wie folgt:

Flag Entsprechender Schlüssel
HOTKEYF_ALT ALT-TASTE
HOTKEYF_CONTROL STRG-TASTE
HOTKEYF_EXT Erweiterte Taste
HOTKEYF_SHIFT UMSCHALTTASTE

Rückgabewert

In der ersten überladenen Methode enthält ein DWORD, das den virtuellen Schlüsselcode und Modifiziererkennzeichnungen enthält. Das Byte mit niedriger Reihenfolge des Worts mit niedriger Reihenfolge enthält den virtuellen Schlüsselcode, das Byte mit hoher Reihenfolge des Worts mit niedriger Reihenfolge enthält die Modifiziererkennzeichnungen, und das Hochreihenfolgenwort ist null.

Hinweise

Der virtuelle Tastencode und die Modifizierertasten definieren zusammen die Tastenkombination.

CHotKeyCtrl::GetHotKeyName

Rufen Sie diese Memberfunktion auf, um den lokalisierten Namen der Abkürzungstaste abzurufen.

CString GetHotKeyName() const;

Rückgabewert

Der lokalisierte Name des aktuell ausgewählten Hot Keys. Wenn keine ausgewählte Abkürzungstaste vorhanden ist, GetHotKeyName wird eine leere Zeichenfolge zurückgegeben.

Hinweise

Der Name, den diese Memberfunktion zurückgibt, stammt vom Tastaturtreiber. Sie können einen nicht lokalisierten Tastaturtreiber in einer lokalisierten Version von Windows installieren und umgekehrt.

CHotKeyCtrl::GetKeyName

Rufen Sie diese Memberfunktion auf, um den lokalisierten Namen des Schlüssels abzurufen, der einem angegebenen virtuellen Schlüsselcode zugewiesen ist.

static CString GetKeyName(
    UINT vk,
    BOOL fExtended);

Parameter

vk
Der virtuelle Schlüsselcode.

fExtended
Wenn der virtuelle Schlüsselcode ein erweiterter Schlüssel ist, TRUE; andernfalls FALSE.

Rückgabewert

Der lokalisierte Name des durch den vk-Parameter angegebenen Schlüssels. Wenn der Schlüssel keinen zugeordneten Namen hat, GetKeyName wird eine leere Zeichenfolge zurückgegeben.

Hinweise

Der Schlüsselname, den diese Funktion zurückgibt, stammt vom Tastaturtreiber, sodass Sie einen nicht lokalisierten Tastaturtreiber in einer lokalisierten Version von Windows installieren können und umgekehrt.

Beispiel

CString str;
str = CHotKeyCtrl::GetKeyName(VK_CONTROL, FALSE);
// str is now "Ctrl", or the localized equivalent.

CHotKeyCtrl::SetHotKey

Legt die Tastenkombination für ein Hot-Key-Steuerelement fest.

void SetHotKey(
    WORD wVirtualKeyCode,
    WORD wModifiers);

Parameter

wVirtualKeyCode
[in] Virtueller Tastencode der Tastenkombination. Eine Liste der standardmäßigen virtuellen Schlüsselcodes finden Sie unter Winuser.h.

wModifiers
[in] Eine bitweise Kombination (OR) von Flags, die die Modifizierertasten in der Tastenkombination angeben.

Die Modifiziererkennzeichnungen sind wie folgt:

Flag Entsprechender Schlüssel
HOTKEYF_ALT ALT-TASTE
HOTKEYF_CONTROL STRG-TASTE
HOTKEYF_EXT Erweiterte Taste
HOTKEYF_SHIFT UMSCHALTTASTE

Hinweise

Der virtuelle Tastencode und die Modifizierertasten definieren zusammen die Tastenkombination.

CHotKeyCtrl::SetRules

Rufen Sie diese Funktion auf, um die ungültigen Kombinationen und die Standardmodifiziererkombination für ein Hot Key-Steuerelement zu definieren.

void SetRules(
    WORD wInvalidComb,
    WORD wModifiers);

Parameter

wInvalidComb
Array von Flags, die ungültige Tastenkombinationen angibt. Dabei kann es sich um eine Kombination der folgenden Werte handeln:

  • HKCOMB_A ALT

  • HKCOMB_C STRG

  • HKCOMB_CA STRG+ALT

  • HKCOMB_NONE Nicht geänderte Schlüssel

  • HKCOMB_S UMSCHALT

  • HKCOMB_SA UMSCHALT+ALT

  • HKCOMB_SC UMSCHALT+STRG

  • HKCOMB_SCA UMSCHALT+STRG+ALT

wModifiers
Array von Flags, die die Tastenkombination angibt, die verwendet werden soll, wenn der Benutzer eine ungültige Kombination eingibt. Weitere Informationen zu den Modifiziererkennzeichnungen finden Sie unter GetHotKey.

Hinweise

Wenn ein Benutzer eine ungültige Tastenkombination eingibt, wie durch in wInvalidComb angegebene Flags definiert, verwendet das System den OR-Operator, um die vom Benutzer eingegebenen Schlüssel mit den in wModifiers angegebenen Flags zu kombinieren. Die resultierende Tastenkombination wird in eine Zeichenfolge konvertiert und dann im Hot Key-Steuerelement angezeigt.

Siehe auch

CWnd-Klasse
Hierarchiediagramm