Informazioni sui controlli tasto di scelta rapida
Un controllo tasto di scelta rapida è una finestra che consente all'utente di immettere una combinazione di sequenze di tasti da usare come 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. La schermata seguente mostra come viene visualizzato un controllo tasto di scelta rapida in una finestra di dialogo dopo che l'utente preme ALT.
Uso dei controlli tasto di scelta rapida
Quando l'utente immette una combinazione di tasti da usare come tasto di scelta rapida, i nomi dei tasti vengono visualizzati nel controllo tasto di scelta rapida. Una combinazione di tasti può essere costituita da un tasto di modifica (ad esempio CTRL, ALT o MAIUSC) e da un tasto di accompagnamento (ad esempio un tasto di scelta rapida, un tasto freccia, un tasto funzione e così via).
Dopo che l'utente ha scelto una combinazione di tasti, l'applicazione recupera la combinazione di tasti dal controllo tasto di scelta rapida e la usa per configurare un tasto di scelta rapida nel sistema. Le informazioni recuperate dal controllo tasto di scelta rapida includono un flag che indica la chiave del modificatore e il codice della chiave virtuale della chiave associata.
L'applicazione può usare le informazioni fornite da un controllo tasto di scelta rapida per configurare un tasto di scelta rapida globale o un tasto di scelta rapida specifico del thread. Un tasto di scelta rapida globale è associato a una determinata finestra; consente all'utente di attivare la finestra da qualsiasi parte del sistema. Un'applicazione imposta un tasto di scelta rapida globale usando il messaggio WM_edizione Standard THOTKEY. Ogni volta che l'utente preme un tasto di scelta rapida globale, la finestra specificata in WM_edizione Standard THOTKEY riceve un messaggio WM_SYSCOMMAND che specifica il valore SC_HOTKEY. Questo messaggio attiva la finestra che lo riceve. Il tasto di scelta rapida rimane valido fino a quando l'applicazione chiamata WM_edizione Standard THOTKEY non viene chiusa.
Un tasto di scelta rapida specifico del thread genera un messaggio WM_HOTKEY inviato all'inizio di un thread specifico in modo che venga rimosso dall'iterazione successiva del ciclo di messaggi. Un'applicazione imposta un tasto di scelta rapida specifico del thread usando la funzione RegisterHotKey.
Messaggi di controllo dei tasti di scelta rapida
Dopo aver creato un controllo tasto di scelta rapida, un'applicazione interagisce con essa usando tre messaggi: HKM_edizione Standard TRULES, HKM_edizione Standard THOTKEY e HKM_GETHOTKEY.
Un'applicazione può inviare il messaggio HKM_edizione Standard TRULES per specificare un set di combinazioni di tasti CTRL, ALT e MAIUSC considerate tasti di scelta rapida non valide. Se l'applicazione specifica una combinazione di tasti non valida, deve specificare anche una combinazione di modifica predefinita da usare quando l'utente seleziona la combinazione non valida. Quando l'utente immette la combinazione non valida, il sistema esegue un'operazione OR logica sulla combinazione non valida e sulla combinazione predefinita. Il risultato è considerato una combinazione valida; viene convertito in una stringa e visualizzato nel controllo .
Il messaggio HKM_edizione Standard THOTKEY consente a un'applicazione di impostare la combinazione di tasti di scelta rapida per un controllo tasto di scelta rapida. Questo messaggio viene in genere usato anche quando viene creato il controllo tasto di scelta rapida.
Le applicazioni usano il messaggio HKM_GETHOTKEY per recuperare il codice della chiave virtuale e i flag di modificatore del tasto di scelta dall'utente.
Notifiche di controllo dei tasti di scelta rapida
Il controllo tasto di scelta rapida non invia codici di notifica tramite il messaggio di WM_NOTIFY . Tuttavia, invierà la notifica di EN_CHANGE tramite il messaggio WM_COMMAND quando l'utente modifica il contenuto del controllo.
Elaborazione predefinita dei messaggi con tasto di scelta rapida
In questa sezione vengono descritti i messaggi della finestra gestiti dalla routine della finestra per la classe della finestra HOTKEY_CLASS predefinita usata con i controlli tasto di scelta rapida.
Message | Elaborazione eseguita |
---|---|
WM_CHAR | Recupera il codice della chiave virtuale. |
WM_CREATE | Inizializza il controllo tasto di scelta rapida, cancella le regole dei tasti di scelta rapida e usa il tipo di carattere di sistema. |
WM_ERAedizione Standard BKGND | Nasconde il cursore, chiama la funzione DefWindowProc e mostra di nuovo il cursore. |
WM_GETDLGCODE | Restituisce una combinazione dei valori DLGC_WANTCHARS e DLGC_WANTARROWS. |
WM_GETFONT | Recupera il tipo di carattere. |
WM_KEYDOWN | Chiama la funzione DefWindowProc se il tasto è INVIO, TAB, BARRA SPAZIATRICE, DEL, ESC o BACKSPACE. Se il tasto è MAIUSC, CTRL o ALT, controlla se la combinazione è valida e, in caso affermativo, imposta il tasto di scelta rapida usando la combinazione. Tutte le altre chiavi vengono impostate come tasti di scelta rapida senza che venga verificata prima la validità. |
WM_KEYUP | Recupera il codice della chiave virtuale. |
WM_KILLFOCUS | Distrugge il cursore. |
WM_LBUTTONDOWN | Imposta lo stato attivo sulla finestra. |
WM_NCCREATE | Imposta lo stile della finestra WS_EX_CLIENTEDGE. |
WM_PAINT | Disegna il controllo tasto di scelta rapida. |
WM_edizione Standard TFOCUS | Crea e mostra il cursore. |
WM_edizione Standard TFONT | Imposta il tipo di carattere. |
WM_SYSCHAR | Recupera il codice della chiave virtuale. |
WM_SYSKEYDOWN | Chiama la funzione DefWindowProc se il tasto è INVIO, TAB, BARRA SPAZIATRICE, DEL, ESC o BACKSPACE. Se il tasto è MAIUSC, CTRL o ALT, controlla se la combinazione è valida e, in caso affermativo, imposta il tasto di scelta rapida usando la combinazione. Tutte le altre chiavi vengono impostate come tasti di scelta rapida senza che venga verificata prima la validità. |
WM_SYSKEYUP | Recupera il codice della chiave virtuale. |