Share via


CHotKeyCtrl-klasse

Opmerking

De Microsoft Foundation Classes-bibliotheek (MFC) wordt nog steeds ondersteund. We voegen echter geen functies meer toe of werken de documentatie bij.

Biedt de functionaliteit van het algemene besturingselement voor windows-sneltoetsen.

Syntaxis

class CHotKeyCtrl : public CWnd

Leden

Openbare constructors

Naam Description
CHotKeyCtrl::CHotKeyCtrl Maakt een CHotKeyCtrl object.

Openbare methoden

Naam Description
CHotKeyCtrl::Create Hiermee maakt u een sneltoets en koppelt u dit aan een CHotKeyCtrl object.
CHotKeyCtrl::CreateEx Hiermee maakt u een sneltoets met de opgegeven uitgebreide Stijlen van Windows en koppelt u dit aan een CHotKeyCtrl object.
CHotKeyCtrl::GetHotKey Haalt de code van de virtuele sleutel en de wijzigingsvlagken van een sneltoets op uit een sneltoets.
CHotKeyCtrl::GetHotKeyName Haalt de sleutelnaam, in de lokale tekenset, op die is toegewezen aan een sneltoets.
CHotKeyCtrl::GetKeyName Haalt de sleutelnaam, in de lokale tekenset, op die is toegewezen aan de opgegeven virtuele-sleutelcode.
CHotKeyCtrl::SetHotKey Hiermee stelt u de sneltoetscombinatie in voor een sneltoets.
CHotKeyCtrl::SetRules Definieert de ongeldige combinaties en de standaardaanpassingscombinatie voor een sneltoets.

Opmerkingen

Een 'sneltoets' is een venster waarmee de gebruiker een sneltoets kan maken. Een sneltoets is een toetsencombinatie waarop de gebruiker kan drukken om snel een actie uit te voeren. (Een gebruiker kan bijvoorbeeld een sneltoets maken waarmee een bepaald venster wordt geactiveerd en deze boven aan de Z-volgorde wordt geplaatst.) Het sneltoets besturingselement geeft de keuzen van de gebruiker weer en zorgt ervoor dat de gebruiker een geldige toetsencombinatie selecteert.

Dit besturingselement (en daarom de CHotKeyCtrl klasse) is alleen beschikbaar voor programma's die worden uitgevoerd onder Windows 95/98 en Windows NT versie 3.51 en hoger.

Wanneer de gebruiker een toetsencombinatie heeft gekozen, kan de toepassing de opgegeven toetsencombinatie ophalen uit het besturingselement en het WM_SETHOTKEY bericht gebruiken om de sneltoets in het systeem in te stellen. Wanneer de gebruiker daarna op de sneltoets drukt, ontvangt het venster dat is opgegeven in het WM_SETHOTKEY bericht een WM_SYSCOMMAND bericht dat SC_HOTKEY opgeeft. Met dit bericht wordt het venster geactiveerd dat het ontvangt. De sneltoets blijft geldig totdat de toepassing die WM_SETHOTKEY wordt aangeroepen, wordt afgesloten.

Dit mechanisme verschilt van de sneltoetsondersteuning die afhankelijk is van het WM_HOTKEY bericht en de functies Windows RegisterHotKey en UnregisterHotKey .

Zie Besturingselementen en CHotKeyCtrl gebruiken voor meer informatie over het gebruikCHotKeyCtrl.

Overnamehiërarchie

CObject

CCmdTarget

CWnd

CHotKeyCtrl

Requirements

Koptekst: afxcmn.h

CHotKeyCtrl::CHotKeyCtrl

Maakt een CHotKeyCtrl object.

CHotKeyCtrl();

CHotKeyCtrl::Create

Hiermee maakt u een sneltoets en koppelt u dit aan een CHotKeyCtrl object.

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

Parameterwaarden

dwStyle
Hiermee geeft u de stijl van het besturingselement voor sneltoetsen op. Pas een combinatie van besturingsstijlen toe. Zie Algemene besturingsstijlen in de Windows SDK voor meer informatie.

Rect
Hiermee geeft u de grootte en positie van het besturingselement voor de sneltoets op. Het kan een CRect-object of een RECT-structuur zijn.

pParentWnd
Hiermee geeft u het bovenliggende venster van het besturingselement met sneltoetsen op, meestal een CDialog. Deze mag niet NULL zijn.

nID
Hiermee geeft u de id van het besturingselement voor de sneltoets op.

Retourwaarde

Nonzero, als initialisatie is geslaagd; anders 0.

Opmerkingen

U maakt een CHotKeyCtrl object in twee stappen. Roep eerst de constructor aan en roep Createvervolgens het aan, waarmee het besturingselement voor sneltoetsen wordt gemaakt en aan het CHotKeyCtrl object wordt gekoppeld.

Als u uitgebreide vensterstijlen wilt gebruiken met uw besturingselement, roept u CreateEx aan in plaats van Create.

CHotKeyCtrl::CreateEx

Roep deze functie aan om een besturingselement (een onderliggend venster) te maken en dit aan het CHotKeyCtrl object te koppelen.

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

Parameterwaarden

dwExStyle
Hiermee geeft u de uitgebreide stijl van het besturingselement dat wordt gemaakt. Zie de dwExStyle-parameter voor CreateWindowEx in de Windows SDK voor een lijst met uitgebreide Windows-stijlen.

dwStyle
Hiermee geeft u de stijl van het besturingselement voor sneltoetsen op. Pas een combinatie van besturingsstijlen toe. Zie Algemene besturingsstijlen in de Windows SDK voor meer informatie.

Rect
Een verwijzing naar een RECT-structuur die de grootte en positie van het venster beschrijft dat moet worden gemaakt, in clientcoördinaten van pParentWnd.

pParentWnd
Een aanwijzer naar het venster dat het bovenliggende besturingselement is.

nID
De id van het onderliggende venster van het besturingselement.

Retourwaarde

Niet-nul indien geslaagd; anders 0.

Opmerkingen

Gebruik CreateEx in plaats van Maken om uitgebreide Windows-stijlen toe te passen, die zijn opgegeven door het voorwoord van de uitgebreide stijl van Windows WS_EX_.

CHotKeyCtrl::GetHotKey

Haalt de code van de virtuele sleutel en de wijzigingsvlagmen van een sneltoets op uit een sneltoets.

DWORD GetHotKey() const;

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

Parameterwaarden

wVirtualKeyCode
[uit] Virtuele-toetscode van de sneltoets. Zie Winuser.h voor een lijst met standaard virtuele-sleutelcodes.

wModifiers
[uit] Een bitsgewijze combinatie (OR) van vlaggen die de wijzigingstoetsen in de sneltoets aangeven.

De wijzigingsvlagmen zijn als volgt:

Flag Bijbehorende sleutel
HOTKEYF_ALT Alt-toets
HOTKEYF_CONTROL Ctrl-toets
HOTKEYF_EXT Uitgebreide sleutel
HOTKEYF_SHIFT SHIFT-toets

Retourwaarde

In de eerste overbelaste methode bevat een DWORD die de code en wijzigingsvlagmen van de virtuele sleutel bevat. De byte met lage volgorde van het woord met lage volgorde bevat de code van de virtuele sleutel, de byte met hoge volgorde van het woord met lage volgorde bevat de wijzigingsvlagken en het woord in hoge volgorde is nul.

Opmerkingen

De code van de virtuele sleutel en de wijzigingstoetsen definiëren samen de sneltoets.

CHotKeyCtrl::GetHotKeyName

Roep deze lidfunctie aan om de gelokaliseerde naam van de sneltoets op te halen.

CString GetHotKeyName() const;

Retourwaarde

De gelokaliseerde naam van de geselecteerde sneltoets. Als er geen geselecteerde sneltoets is, GetHotKeyName wordt een lege tekenreeks geretourneerd.

Opmerkingen

De naam die deze lidfunctie retourneert, is afkomstig van het toetsenbordstuurprogramma. U kunt een niet-gelokaliseerd toetsenbordstuurprogramma installeren in een gelokaliseerde versie van Windows en omgekeerd.

CHotKeyCtrl::GetKeyName

Roep deze lidfunctie aan om de gelokaliseerde naam op te halen van de sleutel die is toegewezen aan een opgegeven virtuele-sleutelcode.

static CString GetKeyName(
    UINT vk,
    BOOL fExtended);

Parameterwaarden

vk
De code van de virtuele sleutel.

fExtended
Als de code van de virtuele sleutel een uitgebreide sleutel is, WAAR; anders ONWAAR.

Retourwaarde

De gelokaliseerde naam van de sleutel die is opgegeven door de vk-parameter . Als de sleutel geen toegewezen naam heeft, GetKeyName wordt een lege tekenreeks geretourneerd.

Opmerkingen

De sleutelnaam die door deze functie wordt geretourneerd, is afkomstig van het toetsenbordstuurprogramma, zodat u een niet-gelokaliseerd toetsenbordstuurprogramma kunt installeren in een gelokaliseerde versie van Windows en vice versa.

Example

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

CHotKeyCtrl::SetHotKey

Hiermee stelt u de sneltoets in voor een sneltoets.

void SetHotKey(
    WORD wVirtualKeyCode,
    WORD wModifiers);

Parameterwaarden

wVirtualKeyCode
[in] Virtuele-toetscode van de sneltoets. Zie Winuser.h voor een lijst met standaard virtuele-sleutelcodes.

wModifiers
[in] Een bitsgewijze combinatie (OR) van vlaggen die de wijzigingstoetsen in de sneltoets aangeven.

De wijzigingsvlagmen zijn als volgt:

Flag Bijbehorende sleutel
HOTKEYF_ALT Alt-toets
HOTKEYF_CONTROL Ctrl-toets
HOTKEYF_EXT Uitgebreide sleutel
HOTKEYF_SHIFT SHIFT-toets

Opmerkingen

De code van de virtuele sleutel en de wijzigingstoetsen definiëren samen de sneltoets.

CHotKeyCtrl::SetRules

Roep deze functie aan om de ongeldige combinaties en de standaardaanpassingscombinatie voor een sneltoets te definiëren.

void SetRules(
    WORD wInvalidComb,
    WORD wModifiers);

Parameterwaarden

wInvalidComb
Matrix met vlaggen waarmee ongeldige toetsencombinaties worden opgegeven. Dit kan een combinatie van de volgende waarden zijn:

  • HKCOMB_A ALT

  • HKCOMB_C CTRL

  • HKCOMB_CA CTRL+ALT

  • HKCOMB_NONE ongewijzigde sleutels

  • HKCOMB_S SHIFT

  • HKCOMB_SA SHIFT+ALT

  • HKCOMB_SC SHIFT+CTRL

  • HKCOMB_SCA SHIFT+CTRL+ALT

wModifiers
Matrix met vlaggen waarmee de toetsencombinatie wordt opgegeven die moet worden gebruikt wanneer de gebruiker een ongeldige combinatie invoert. Zie GetHotKey voor meer informatie over de wijzigingsvlagmen.

Opmerkingen

Wanneer een gebruiker een ongeldige toetsencombinatie invoert, zoals gedefinieerd door vlaggen die zijn opgegeven in wInvalidComb, gebruikt het systeem de OPERATOR OR om de sleutels te combineren die door de gebruiker zijn ingevoerd met de vlaggen die zijn opgegeven in wModifiers. De resulterende toetsencombinatie wordt geconverteerd naar een tekenreeks en vervolgens weergegeven in het besturingselement voor sneltoetsen.

Zie ook

CWnd-klasse
Hiërarchiegrafiek