Funzione SetFocus (winuser.h)
Imposta lo stato attivo della tastiera sulla finestra specificata. La finestra deve essere collegata alla coda del messaggio del thread chiamante.
Sintassi
HWND SetFocus(
[in, optional] HWND hWnd
);
Parametri
[in, optional] hWnd
Tipo: HWND
Handle alla finestra che riceverà l'input della tastiera. Se questo parametro è NULL, le sequenze di tasti vengono ignorate.
Valore restituito
Tipo: HWND
Se la funzione ha esito positivo, il valore restituito è l'handle della finestra che in precedenza aveva lo stato attivo della tastiera. Se il parametro hWnd non è valido o la finestra non è collegata alla coda del messaggio del thread chiamante, il valore restituito è NULL. Per ottenere informazioni sull'errore estese, chiamare la funzione GetLastError.
L'errore esteso ERROR_INVALID_PARAMETER (0x57) indica che la finestra è in stato disabilitato.
Commenti
Questa funzione invia un messaggio WM_KILLFOCUS alla finestra che perde lo stato attivo della tastiera e un messaggio WM_SETFOCUS alla finestra che riceve lo stato attivo della tastiera. Attiva anche la finestra che riceve lo stato attivo o l'elemento padre della finestra che riceve lo stato attivo.
Se una finestra è attiva ma non ha lo stato attivo, qualsiasi tasto premuto produce il WM_SYSCHAR, WM_SYSKEYDOWN o WM_SYSKEYUP messaggio. Se viene premuto anche il tasto VK_MENU, viene impostato un bit 30 del parametro lParam del messaggio. In caso contrario, i messaggi prodotti non hanno questo set di bit.
Usando la funzione AttachThreadInput, un thread può collegare l'elaborazione di input a un altro thread. Ciò consente a un thread di chiamare SetFocus per impostare lo stato attivo della tastiera su una finestra collegata alla coda di messaggi di un altro thread.
Esempio
Per un esempio, vedere Inizializzazione di una finestra di dialogo.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winuser.h (include Windows.h) |
Libreria | User32.lib |
DLL | User32.dll |
Set di API | ext-ms-win-ntuser-window-l1-1-4 (introdotta in Windows 10, versione 10.0.14393) |
Vedi anche
Funzione AttachThreadInput, funzione GetFocus, WM_KILLFOCUS, WM_SETFOCUS, WM_SYSCHAR, WM_SYSKEYDOWN, WM_SYSKEYUP, Input tastiera