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 CHotKeyCtrl
di , vedere Controlli e uso di CHotKeyCtrl.
Gerarchia di ereditarietà
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.