windows_programming_notes.nbk: Home | Index | Next Page: WM_SETICON | Previous Page: WM_SETFONT


 WM_SETHOTKEY

An application sends a WM_SETHOTKEY message to a window to associate a hot key with the window. When the user presses the hot key, the system activates the window.

To send this message, call the SendMessage function with the following parameters.

    SendMessage( 
      (HWND) hWnd,             // handle to destination window 
      WM_SETHOTKEY,            // message to send
      (WPARAM) wParam,         // virtual-key code and modifiers
      (LPARAM) lParam         // not used; must be zero
    );

Parameters

Setting wParam to NULL removes the hot key associated with a window.

Return Values

The return value is one of the following.

Value Meaning –1 The function is unsuccessful—the hot key is invalid. 0 The function is unsuccessful—the window is invalid. 1 The function is successful, and no other window has the same hot key. 2 The function is successful, but another window already has the same hot key.

Remarks

A hot key cannot be associated with a child window.

VK_ESCAPE, VK_SPACE, and VK_TAB are invalid hot keys.

When the user presses the hot key, the system generates a WM_SYSCOMMAND message with wParam equal to SC_HOTKEY and lParam equal to the window's handle. If this message is passed on to DefWindowProc, the system will bring the window's last active popup (if it exists) or the window itself (if there is no popup window) to the foreground.

A window can only have one hot key. If the window already has a hot key associated with it, the new hot key replaces the old one. If more than one window has the same hot key, the window that is activated by the hot key is random.

These hot keys are unrelated to the hot keys set by RegisterHotKey.

Requirements

  Windows NT/2000 or later: Requires Windows NT 3.1 or later.
  Windows 95/98/Me: Requires Windows 95 or later.
  Header: Declared in Winuser.h; include Windows.h.

windows_programming_notes.nbk: Home | Index | Next Page: WM_SETICON | Previous Page: WM_SETFONT


Notebook exported on Monday, 7 July 2008, 18:56:50 PM Eastern Daylight Time