CHotKeyCtrl – třída
Poskytuje funkce běžného ovládacího prvku klávesové zkratky systému Windows.
Syntaxe
class CHotKeyCtrl : public CWnd
Členové
Veřejné konstruktory
Název | Popis |
---|---|
CHotKeyCtrl::CHotKeyCtrl | CHotKeyCtrl Vytvoří objekt. |
Veřejné metody
Název | Popis |
---|---|
CHotKeyCtrl::Create | Vytvoří ovládací prvek s klávesovou zkratkou a připojí ho k objektu CHotKeyCtrl . |
CHotKeyCtrl::CreateEx | Vytvoří ovládací prvek klávesové zkratky se zadanými rozšířenými styly Windows a připojí ho k objektu CHotKeyCtrl . |
CHotKeyCtrl::GetHotKey | Načte kód virtuálního klíče a modifikační příznaky klávesové zkratky z ovládacího prvku hot key. |
CHotKeyCtrl::GetHotKeyName | Načte název klíče v místní znakové sadě přiřazené k klávesové zkratce. |
CHotKeyCtrl::GetKeyName | Načte název klíče v místní znakové sadě přiřazené zadanému kódu virtuálního klíče. |
CHotKeyCtrl::SetHotKey | Nastaví kombinaci klávesových zkratek pro ovládací prvek s klávesovou zkratkou. |
CHotKeyCtrl::SetRules | Definuje neplatné kombinace a výchozí kombinaci modifikátoru pro ovládací prvek s klávesovou zkratkou. |
Poznámky
Ovládací prvek "klávesová zkratka" je okno, které uživateli umožňuje vytvořit klávesovou zkratku. "Klávesová zkratka" je kombinace kláves, kterou uživatel může stisknout a rychle provést akci. (Uživatel může například vytvořit klávesovou zkratku, která aktivuje dané okno a přenese ho na začátek objednávky Z.) Ovládací prvek klávesové zkratky zobrazí volby uživatele a zajistí, že uživatel vybere platnou kombinaci kláves.
Tento ovládací prvek (a proto CHotKeyCtrl
třída) je k dispozici pouze pro programy spuštěné v systémech Windows 95/98 a systém Windows NT verze 3.51 a novější.
Když uživatel zvolil kombinaci kláves, může aplikace načíst zadanou kombinaci kláves z ovládacího prvku a pomocí zprávy WM_SETHOTKEY nastavit v systému klávesovou zkratku. Kdykoli uživatel po stisknutí klávesové zkratky z jakékoli části systému obdrží okno zadané ve zprávě WM_SETHOTKEY zprávu s WM_SYSCOMMAND zadáním SC_HOTKEY. Tato zpráva aktivuje okno, které ho obdrží. Horká klávesa zůstane platná, dokud aplikace, která volala WM_SETHOTKEY ukončí.
Tento mechanismus se liší od podpory klávesových zkratek, která závisí na WM_HOTKEY zprávě a funkcích Windows RegisterHotKey a UnregisterHotKey .
Další informace o použití CHotKeyCtrl
naleznete v tématu Ovládací prvky a použití CHotKeyCtrl.
Hierarchie dědičnosti
CHotKeyCtrl
Požadavky
Hlavička: afxcmn.h
CHotKeyCtrl::CHotKeyCtrl
CHotKeyCtrl
Vytvoří objekt.
CHotKeyCtrl();
CHotKeyCtrl::Create
Vytvoří ovládací prvek s klávesovou zkratkou a připojí ho k objektu CHotKeyCtrl
.
virtual BOOL Create(
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parametry
dwStyle
Určuje styl ovládacího prvku hot key. Použijte libovolnou kombinaci stylů ovládacích prvků. Další informace najdete v tématu Běžné styly ovládacích prvků v sadě Windows SDK.
Rect
Určuje velikost a umístění ovládacího prvku hot key. Může to být objekt CRect nebo struktura RECT.
pParentWnd
Určuje nadřazené okno ovládacího prvku hot key, obvykle CDialog. Nesmí mít hodnotu NULL.
Nid
Určuje ID ovládacího prvku hot key.
Návratová hodnota
Nenulové, pokud byla inicializace úspěšná; jinak 0.
Poznámky
Objekt vytvoříte CHotKeyCtrl
ve dvou krocích. Nejprve zavolejte konstruktor a potom volání Create
, který vytvoří ovládací prvek horké klávesy a připojí ho k objektu CHotKeyCtrl
.
Chcete-li použít rozšířené styly oken s ovládacím prvek, volání CreateEx místo Create
.
CHotKeyCtrl::CreateEx
Voláním této funkce vytvoříte ovládací prvek (podřízené okno) a přidružíte ho k objektu CHotKeyCtrl
.
virtual BOOL CreateEx(
DWORD dwExStyle,
DWORD dwStyle,
const RECT& rect,
CWnd* pParentWnd,
UINT nID);
Parametry
dwExStyle
Určuje rozšířený styl vytvářeného ovládacího prvku. Seznam rozšířených stylů Windows naleznete v části dwExStyle parametr pro CreateWindowEx v sadě Windows SDK.
dwStyle
Určuje styl ovládacího prvku hot key. Použijte libovolnou kombinaci stylů ovládacích prvků. Další informace naleznete v tématu Běžné styly ovládacích prvků v sadě Windows SDK.
Rect
Odkaz na strukturu RECT popisující velikost a umístění okna, které se má vytvořit, v souřadnicích klienta pParentWnd.
pParentWnd
Ukazatel na okno, které je nadřazeným objektem ovládacího prvku.
Nid
ID podřízeného okna ovládacího prvku.
Návratová hodnota
Nenulové, pokud je úspěšné; jinak 0.
Poznámky
Místo příkazu Vytvořit použijte CreateEx
rozšířené styly Windows určené před WS_EX_ rozšířeného stylu Windows.
CHotKeyCtrl::GetHotKey
Načte kód virtuálního klíče a modifikační příznaky klávesové zkratky z ovládacího prvku klávesová zkratka.
DWORD GetHotKey() const;
void GetHotKey(
WORD& wVirtualKeyCode,
WORD& wModifiers) const;
Parametry
wVirtualKeyCode
[ven] Kód virtuální klávesy klávesové zkratky Seznam standardních kódů virtuálních klíčů najdete v tématu Winuser.h.
wModifiers
[ven] Bitové kombinace (OR) příznaků, které označují modifikační klávesy v klávesové zkratkě.
Modifikační příznaky jsou následující:
Příznak | Odpovídající klíč |
---|---|
HOTKEYF_ALT | ALT klávesa |
HOTKEYF_CONTROL | Klávesa CTRL |
HOTKEYF_EXT | Rozšířený klíč |
HOTKEYF_SHIFT | Klávesa SHIFT |
Návratová hodnota
V první přetížené metodě DWORD, která obsahuje kód virtuálního klíče a modifikační příznaky. Bajt s nízkým pořadím slova s nízkým pořadím obsahuje kód virtuálního klíče, bajt s vysokým pořadím slova s nízkým pořadím obsahuje modifikační příznaky a slovo s vysokým pořadím je nula.
Poznámky
Kód virtuálního klíče a modifikační klávesy společně definují klávesovou zkratku.
CHotKeyCtrl::GetHotKeyName
Voláním této členské funkce získáte lokalizovaný název klávesové zkratky.
CString GetHotKeyName() const;
Návratová hodnota
Lokalizovaný název aktuálně vybrané klávesové zkratky. Pokud není vybraná klávesa hot key, GetHotKeyName
vrátí prázdný řetězec.
Poznámky
Název, který tato členová funkce vrátí, pochází z ovladače klávesnice. Neloklovaný ovladač klávesnice můžete nainstalovat v lokalizované verzi Systému Windows a naopak.
CHotKeyCtrl::GetKeyName
Voláním této členské funkce získáte lokalizovaný název klíče přiřazeného zadanému kódu virtuálního klíče.
static CString GetKeyName(
UINT vk,
BOOL fExtended);
Parametry
vk
Kód virtuálního klíče.
fExtended
Pokud je kód virtuálního klíče rozšířeným klíčem, PRAVDA; jinak NEPRAVDA.
Návratová hodnota
Lokalizovaný název klíče určeného parametrem vk . Pokud klíč nemá žádný mapovaný název, GetKeyName
vrátí prázdný řetězec.
Poznámky
Název klíče, který tato funkce vrátí, pochází z ovladače klávesnice, takže můžete nainstalovat nelokaovaný ovladač klávesnice v lokalizované verzi Systému Windows a naopak.
Příklad
CString str;
str = CHotKeyCtrl::GetKeyName(VK_CONTROL, FALSE);
// str is now "Ctrl", or the localized equivalent.
CHotKeyCtrl::SetHotKey
Nastaví klávesovou zkratku pro ovládací prvek s klávesovou zkratkou.
void SetHotKey(
WORD wVirtualKeyCode,
WORD wModifiers);
Parametry
wVirtualKeyCode
[v] Kód virtuální klávesy klávesové zkratky Seznam standardních kódů virtuálních klíčů najdete v tématu Winuser.h.
wModifiers
[v] Bitové kombinace (OR) příznaků, které označují modifikační klávesy v klávesové zkratkě.
Modifikační příznaky jsou následující:
Příznak | Odpovídající klíč |
---|---|
HOTKEYF_ALT | ALT klávesa |
HOTKEYF_CONTROL | Klávesa CTRL |
HOTKEYF_EXT | Rozšířený klíč |
HOTKEYF_SHIFT | Klávesa SHIFT |
Poznámky
Kód virtuálního klíče a modifikační klávesy společně definují klávesovou zkratku.
CHotKeyCtrl::SetRules
Voláním této funkce definujte neplatné kombinace a výchozí kombinaci modifikátoru pro ovládací prvek s klávesovou zkratkou.
void SetRules(
WORD wInvalidComb,
WORD wModifiers);
Parametry
wInvalidComb
Pole příznaků, které určují neplatné kombinace kláves. Může se jednat o kombinaci následujících hodnot:
HKCOMB_A ALT
HKCOMB_C CTRL
HKCOMB_CA CTRL+ALT
HKCOMB_NONE neopravené klíče
HKCOMB_S SHIFT
HKCOMB_SA SHIFT+ALT
HKCOMB_SC SHIFT+CTRL
HKCOMB_SCA SHIFT+CTRL+ALT
wModifiers
Pole příznaků, které určuje kombinaci kláves, která se má použít, když uživatel zadá neplatnou kombinaci. Další informace o modifikačních příznakech naleznete v tématu GetHotKey.
Poznámky
Když uživatel zadá neplatnou kombinaci klíčů, jak je definováno příznaky zadanými v wInvalidComb, systém pomocí operátoru OR zkombinuje klíče zadané uživatelem s příznaky zadanými v wModifiers. Výsledná kombinace kláves se převede na řetězec a pak se zobrazí v ovládacím prvku klávesová zkratka.