Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of mappen te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen om mappen te wijzigen.
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
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.