Sdílet prostřednictvím


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

Jméno popis
CHotKeyCtrl::CHotKeyCtrl CHotKeyCtrl Vytvoří objekt.

Veřejné metody

Jméno 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í CHotKeyCtrlnaleznete v tématu Ovládací prvky a použití CHotKeyCtrl.

Hierarchie dědičnosti

Objekt CObject

CCmdTarget

Cwnd

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.

Vrácená 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.

Vrácená 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

Vrácená 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;

Vrácená 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.

Vrácená 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.

Viz také

CWnd – třída
Graf hierarchie