Biblioteki C/C++
SetFocus
[funkcja] Przekazuje fokus wybranemu oknu, które musi być skojarzone z kolejką komunikatów wywołującego wątku.Składnia
#include <windows.h>
HWND WINAPI SetFocus(
HWND hWnd
);
Argumenty
Zwracana wartość
Jeśli wywołanie funkcji powiedzie się, zwróci ona uchwyt do okna, które jako ostatnie posiadało fokusa. Jeśli argument
hWnd jest nieprawidłowy lub okno nie jest skojarzone z kolejką komunikatów wywołującego wątku, zwróconą wartością będzie
NULL. Aby uzyskać szczegółowe informacje o błędzie, użyj
GetLastError.
Opis szczegółowy
Funkcja
SetFocus przekazuje fokus wybranemu oknu, które musi być skojarzone z kolejką komunikatów wywołującego wątku.
Do okna, które jako ostatnie było w posiadaniu fokusa, wysyłany jest komunikat
WM_KILLFOCUS, a do okna które zostało określone argumentem
hWnd, komunikat
WM_SETFOCUS. Aktywowane zostaje albo okno, do którego został wysłany komunikat
WM_SETFOCUS, albo jego okno nadrzędne (okno-rodzic).
Jeśli okno jest aktywne, ale nie posiada fokusa, każde naciśnięcie dowolnego klawisza spowoduje wysłanie komunikatu
WM_SYSCHAR,
WM_SYSKEYDOWN, lub
WM_SYSKEYUP. Jeśli dodatkowo naciśnięty będzie klawisz VK_MENU, otrzymany argument lParam będzie posiadał ustawiony bit 30.
Użycie funkcji
AttachThreadInput pozwala następnie wywołać funkcję
SetFocus z uchwytem okna, które nie należy do kolejki komunikatów wywołującego wątku, jako argumentem.
Wymagania
Zagadnienia powiązane
GetFocus | Zwraca uchwyt do okna, które aktualnie posiada fokus, jeśli okno to jest skojarzone z kolejką komunikatów wywołującego wątku. (funkcja) |
---|
Linki zewnętrzne
Wszystkie teksty są chronione prawami autorskimi. Kopiowanie lub rozpowszechnianie treści poza niniejszym serwisem
jest zabronione.
Powyższe ograniczenie nie dotyczy autora opracowania, któremu przysługuje prawo do rozpowszechniania własnego tekstu wedle własnego uznania.