Condividi tramite


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.

screen shot of a dialog box that contains a hot key control

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.