The SetForegroundWindow function puts the thread that created the specified window into the foreground and activates the window. Keyboard input is directed to the window, and various visual cues are changed for the user.
BOOL SetForegroundWindow(
HWND hWnd |
// handle of window to bring to foreground |
); |
If the function succeeds, the return value is nonzero.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
The foreground window is the window at the top of the Z order. It is the window that the user is working with. In a preemptive multitasking environment, you should generally let the user control which window is the foreground window. However, an application can call SetForegroundWindow if it wants to put itself into the foreground to display a critical error or information that requires the user’s immediate attention. A good example is a debugger when it hits a breakpoint.
The system assigns a slightly higher priority to the thread that created the foreground window than it does to other threads.