Classe CHotKeyCtrl

Fornisce la funzionalità del controllo tasto di scelta comune di Windows.

Sintassi

class CHotKeyCtrl : public CWnd

Membri

Costruttori pubblici

Nome Descrizione
CHotKeyCtrl::CHotKeyCtrl Costruisce un oggetto CHotKeyCtrl.

Metodi pubblici

Nome Descrizione
CHotKeyCtrl::Create Crea un controllo tasto di scelta rapida e lo collega a un CHotKeyCtrl oggetto .
CHotKeyCtrl::CreateEx Crea un controllo tasto di scelta rapida con gli stili estesi di Windows specificati e lo associa a un CHotKeyCtrl oggetto .
CHotKeyCtrl::GetHotKey Recupera il codice della chiave virtuale e i flag di modificatore di un tasto di scelta rapida da un controllo tasto di scelta rapida.
CHotKeyCtrl::GetHotKeyName Recupera il nome della chiave, nel set di caratteri locale, assegnato a un tasto di scelta rapida.
CHotKeyCtrl::GetKeyName Recupera il nome della chiave, nel set di caratteri locale, assegnato al codice della chiave virtuale specificato.
CHotKeyCtrl::SetHotKey Imposta la combinazione di tasti di scelta rapida per un controllo tasto di scelta rapida.
CHotKeyCtrl::SetRules Definisce le combinazioni non valide e la combinazione di modifica predefinita per un controllo tasto di scelta rapida.

Osservazioni:

Un "controllo tasto di scelta rapida" è una finestra che consente all'utente di creare un tasto di scelta rapida. Un tasto di scelta rapida è una combinazione di tasti che l'utente può premere per eseguire rapidamente un'azione. Ad esempio, un utente può creare un tasto di scelta rapida che attiva una determinata finestra e lo porta all'inizio dell'ordine Z. Il controllo tasto di scelta rapida visualizza le scelte dell'utente e garantisce che l'utente selezioni una combinazione di tasti valida.

Questo controllo (e quindi la CHotKeyCtrl classe ) è disponibile solo per i programmi in esecuzione in Windows 95/98 e Windows NT versione 3.51 e successive.

Quando l'utente ha scelto una combinazione di tasti, l'applicazione può recuperare la combinazione di tasti specificata dal controllo e usare il messaggio WM_SETHOTKEY per configurare il tasto di scelta rapida nel sistema. Ogni volta che l'utente preme il tasto di scelta rapida da qualsiasi parte del sistema, la finestra specificata nel messaggio WM_SETHOTKEY riceve un messaggio WM_SYSCOMMAND che specifica SC_HOTKEY. Questo messaggio attiva la finestra che lo riceve. Il tasto di scelta rapida rimane valido fino a quando l'applicazione chiamata WM_SETHOTKEY viene chiusa.

Questo meccanismo è diverso dal supporto dei tasti di scelta rapida che dipende dal messaggio WM_HOTKEY e dalle funzioni Windows RegisterHotKey e UnregisterHotKey .

Per altre informazioni sull'uso CHotKeyCtrldi , vedere Controlli e uso di CHotKeyCtrl.

Gerarchia di ereditarietà

CObject

CCmdTarget

CWnd

CHotKeyCtrl

Requisiti

Intestazione: afxcmn.h

CHotKeyCtrl::CHotKeyCtrl

Costruisce un oggetto CHotKeyCtrl.

CHotKeyCtrl();

CHotKeyCtrl::Create

Crea un controllo tasto di scelta rapida e lo collega a un CHotKeyCtrl oggetto .

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

Parametri

dwStyle
Specifica lo stile del controllo tasto di scelta rapida. Applicare qualsiasi combinazione di stili di controllo. Per altre informazioni, vedere Stili di controllo comuni in Windows SDK.

rect
Specifica le dimensioni e la posizione del controllo del tasto di scelta rapida. Può essere un oggetto CRect o una struttura RECT.

pParentWnd
Specifica la finestra padre del controllo tasto di scelta rapida, in genere un CDialog. Non deve essere NULL.

nID
Specifica l'ID del controllo del tasto di scelta rapida.

Valore restituito

Diverso da zero, se l'inizializzazione ha avuto esito positivo; in caso contrario, 0.

Osservazioni:

Si costruisce un CHotKeyCtrl oggetto in due passaggi. Prima di tutto, chiamare il costruttore e quindi chiamare Create, che crea il controllo del tasto di scelta rapida e lo collega all'oggetto CHotKeyCtrl .

Se si desidera usare gli stili di windows estesi con il controllo, chiamare CreateEx anziché Create.

CHotKeyCtrl::CreateEx

Chiamare questa funzione per creare un controllo (una finestra figlio) e associarlo all'oggetto CHotKeyCtrl .

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

Parametri

dwExStyle
Specifica lo stile esteso del controllo da creare. Per un elenco degli stili di Windows estesi, vedere il parametro dwExStyle per CreateWindowEx in Windows SDK.

dwStyle
Specifica lo stile del controllo tasto di scelta rapida. Applicare qualsiasi combinazione di stili di controllo. Per altre informazioni, vedere Stili di controllo comuni in Windows SDK.

rect
Riferimento a una struttura RECT che descrive le dimensioni e la posizione della finestra da creare, nelle coordinate client di pParentWnd.

pParentWnd
Puntatore alla finestra padre del controllo.

nID
ID finestra figlio del controllo.

Valore restituito

Diverso da zero se ha esito positivo; in caso contrario 0.

Osservazioni:

Usare CreateEx invece di Crea per applicare stili di Windows estesi, specificati dalla prefazione dello stile esteso di Windows WS_EX_.

CHotKeyCtrl::GetHotKey

Recupera il codice del tasto virtuale e i flag di modifica di un tasto di scelta rapida da un controllo tasto di scelta rapida.

DWORD GetHotKey() const;

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

Parametri

wVirtualKeyCode
[out] Codice del tasto virtuale della scelta rapida da tastiera. Per un elenco dei codici di chiave virtuale standard, vedere Winuser.h.

wModifiers
[out] Combinazione bit per bit (OR) di flag che indicano i tasti di modifica nella scelta rapida da tastiera.

I flag di modificatore sono i seguenti:

Flag Chiave corrispondente
HOTKEYF_ALT ALT (tasto)
HOTKEYF_CONTROL TASTO CTRL
HOTKEYF_EXT Chiave estesa
HOTKEYF_SHIFT Tasto SHIFT

Valore restituito

Nel primo metodo di overload, un DWORD che contiene il codice della chiave virtuale e i flag di modificatore. Il byte di ordine basso della parola con ordine basso contiene il codice della chiave virtuale, il byte di ordine elevato della parola con ordine basso contiene i flag di modificatore e la parola di ordine elevato è zero.

Osservazioni:

Il codice del tasto virtuale e i tasti di modifica definiscono insieme i tasti di scelta rapida.

CHotKeyCtrl::GetHotKeyName

Chiamare questa funzione membro per ottenere il nome localizzato del tasto di scelta rapida.

CString GetHotKeyName() const;

Valore restituito

Nome localizzato del tasto di scelta rapida attualmente selezionato. Se non è presente alcun tasto di scelta rapida selezionato, GetHotKeyName restituisce una stringa vuota.

Osservazioni:

Il nome restituito da questa funzione membro proviene dal driver della tastiera. È possibile installare un driver di tastiera non localizzato in una versione localizzata di Windows e viceversa.

CHotKeyCtrl::GetKeyName

Chiamare questa funzione membro per ottenere il nome localizzato della chiave assegnata a un codice di chiave virtuale specificato.

static CString GetKeyName(
    UINT vk,
    BOOL fExtended);

Parametri

vk
Codice della chiave virtuale.

fExtended
Se il codice della chiave virtuale è una chiave estesa, TRUE; in caso contrario FALSE.

Valore restituito

Nome localizzato della chiave specificata dal parametro vk . Se la chiave non ha un nome mappato, GetKeyName restituisce una stringa vuota.

Osservazioni:

Il nome della chiave restituito da questa funzione deriva dal driver della tastiera, quindi è possibile installare un driver di tastiera non localizzato in una versione localizzata di Windows e viceversa.

Esempio

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

CHotKeyCtrl::SetHotKey

Imposta la scelta rapida da tastiera per un controllo tasto di scelta rapida.

void SetHotKey(
    WORD wVirtualKeyCode,
    WORD wModifiers);

Parametri

wVirtualKeyCode
[in] Codice del tasto virtuale della scelta rapida da tastiera. Per un elenco dei codici di chiave virtuale standard, vedere Winuser.h.

wModifiers
[in] Combinazione bit per bit (OR) di flag che indicano i tasti di modifica nella scelta rapida da tastiera.

I flag di modificatore sono i seguenti:

Flag Chiave corrispondente
HOTKEYF_ALT ALT (tasto)
HOTKEYF_CONTROL TASTO CTRL
HOTKEYF_EXT Chiave estesa
HOTKEYF_SHIFT Tasto SHIFT

Osservazioni:

Il codice del tasto virtuale e i tasti di modifica definiscono insieme i tasti di scelta rapida.

CHotKeyCtrl::SetRules

Chiamare questa funzione per definire le combinazioni non valide e la combinazione di modifica predefinita per un controllo tasto di scelta rapida.

void SetRules(
    WORD wInvalidComb,
    WORD wModifiers);

Parametri

wInvalidComb
Matrice di flag che specifica combinazioni di tasti non valide. Può essere una combinazione dei valori seguenti:

  • HKCOMB_A ALT

  • HKCOMB_C CTRL

  • HKCOMB_CA CTRL+ALT

  • HKCOMB_NONE chiavi non modificate

  • HKCOMB_S MAIUSC

  • HKCOMB_SA MAIUSC+ALT

  • HKCOMB_SC MAIUSC+CTRL

  • HKCOMB_SCA MAIUSC+CTRL+ALT

wModifiers
Matrice di flag che specifica la combinazione di tasti da usare quando l'utente immette una combinazione non valida. Per altre informazioni sui flag di modificatore, vedere GetHotKey.

Osservazioni:

Quando un utente immette una combinazione di tasti non valida, come definito dai flag specificati in wInvalidComb, il sistema usa l'operatore OR per combinare le chiavi immesse dall'utente con i flag specificati in wModifiers. La combinazione di tasti risultante viene convertita in una stringa e quindi visualizzata nel controllo tasto di scelta rapida.

Vedi anche

Classe CWnd
Grafico della gerarchia