|
Overview |
|
|
|
Group |
|
|
|
Quick Info
Windows NT
| Yes
| Win95
| Yes
| Win32s
| Yes
| Import Library
| -
| Header File
| winuser.h
| Unicode
| No
| Platform Notes
| None
|
|
|
WM_SYSCOMMAND
A window receives this message when the user chooses a command from the window menu (also known as the System menu or Control menu) or when the user chooses
the Maximize button or Minimize button.
WM_SYSCOMMAND
uCmdType = wParam; // type of system command requested
xPos = LOWORD(lParam); // horizontal postion, in screen coordinates
yPos = HIWORD(lParam); // vertical postion, in screen coordinates
Parameters
uCmdType
Specifies the type of system command requested. This can be one of these
values:
Value
| Meaning
| SC_CLOSE
| Closes the window.
| SC_CONTEXTHELP
| Changes the cursor to a question mark with a pointer. If the user then clicks
a control in the dialog box, the control receives a WM_HELP message.
| SC_DEFAULT
| Selects the default item; the user double-clicked the window menu.
| SC_HOTKEY
| Activates the window associated with the application-specified hot key. The
low-order word of lParam identifies the window to activate.
| SC_HSCROLL
| Scrolls horizontally.
| SC_KEYMENU
| Retrieves the window menu as a result of a keystroke.
| SC_MAXIMIZE (or SC_ZOOM)
| Maximizes the window.
| SC_MINIMIZE (or SC_ICON)
| Minimizes the window.
| SC_MONITORPOWER
| Windows 95 only: Sets the state of the display. This command supports devices that have
power-saving features, such as a battery-powered personal computer.
| SC_MOUSEMENU
| Retrieves the window menu as a result of a mouse click.
| SC_MOVE
| Moves the window.
| SC_NEXTWINDOW
| Moves to the next window.
| SC_PREVWINDOW
| Moves to the previous window.
| SC_RESTORE
| Restores the window to its normal position and size.
| SC_SCREENSAVE
| Executes the screen saver application specified in the [boot] section of the
SYSTEM.INI file.
| SC_SIZE
| Sizes the window.
| SC_TASKLIST
| Executes or activates Windows Task Manager.
| SC_VSCROLL
| Scrolls vertically.
|
xPos
Specifies the horizontal position of the cursor, in screen coordinates, if a window menu command is chosen with the mouse. Otherwise, the xPos parameter is not used.
yPos
Specifies the vertical position of the cursor, in screen coordinates, if a window menu command is chosen with the mouse. This parameter is 1 if the command is chosen using a system accelerator, or zero if using a
mnenomic.
Return Values
An application should return zero if it processes this message.
Remarks
The DefWindowProc function carries out the window menu request for the predefined actions specified in the previous table.
In WM_SYSCOMMAND messages, the four low-order bits of the uCmdType parameter are used internally by Windows. To obtain the correct result when
testing the value of uCmdType, an application must combine the value 0xFFF0 with the uCmdType value by using the bitwise AND operator.
The menu items in a window menu can be modified by using the GetSystemMenu, AppendMenu, InsertMenu, ModifyMenu, InsertMenuItem, and SetMenuItem functions. Applications that modify the window menu must process WM_SYSCOMMAND messages.
An application can carry out any system command at any time by passing a
WM_SYSCOMMAND message to DefWindowProc. Any WM_SYSCOMMAND messages not handled by the application must be passed to DefWindowProc. Any command values added by an application must be processed by the
application and cannot be passed to DefWindowProc.
Accelerator keys that are defined to choose items from the window menu are translated into WM_SYSCOMMAND messages; all other accelerator
keystrokes are translated into WM_COMMAND messages.
See Also
AppendMenu, DefWindowProc, GetSystemMenu, InsertMenu, ModifyMenu, WM_COMMAND
| Last news from Greatis Software |
 |
|
Nostalgia .Net |
|
.Net is powerful, but not all-powerful, so sometimes we need to use Win32 API for our .Net applications. It's simple enough with Platform Invoke if you have Win32 skill, but we do not always have time to dig the ancient documentation, declare the special types that are compatible with Win32, find the values of the Win32's constants and so on. Nostalgia .Net offers several simple-to-use classes, and components that will allow you to forget about the headache of Win32 and just use the power of Win32 in your application the same way as you use the native. Net classes. More » |
| Recommended software for developers |
 |
|
Ultimate Pack |
|
Component pack for Delphi and C++ Builder that contains runtime form designer, runtime object inspector, print suite and much more for the very special price. More » |
 |
|
Form Designer .Net |
|
Unique runtime form design solution that allows to edit any form in .Net WinForms application at runtime with full source codes for only 300 euro! More » |
 |
|
Print Suite .Net |
|
Print Suite .Net is a set of components for easy printing texts, images and grids from your WinForms applications. Full C# source codes are available More » |
 |
|
Gradient Controls .Net |
|
Gradient Controls .Net offers controls with gradient background feature. Labels, panels and so on... Full C# source codes are available More » |
 |
|
Greatis iGrid |
|
iGrid plots drawing grid right over your desktop, so you can use it everywhere, with any drawing application without any special plugins for different graphic editors. More » |
All the contacts and projectsDmitry Vasiliev (just.dmitry)
Related LinksSoftware for Visual Studio .NET developers Software for Delphi and C++ Builder developers Software for Visual Basic 6 developers Delphi Tips&Tricks MegaDetailed.NET More Online Helps Win32 Programmer's Reference Win32 Multimedia Programmer's Reference OLE Programmer's Reference Microsoft Windows Pen API Programmer's Reference Microsoft Windows Sockets 2 Reference Microsoft Windows Telephony API (TAPI) Programmer's Reference Unix Manual Pages
|