Window Styles
2015-12-16 10:39
288 查看
1.WNDCLASS structure。
style
Type: UINT
The class style(s). This member can be any combination of the
Class Styles.
lpfnWndProc
Type: WNDPROC
A pointer to the window procedure. You must use the
CallWindowProc function to call the window procedure. For more information, see
WindowProc.
cbClsExtra
Type: int
The number of extra bytes to allocate following the window-class structure. The system initializes the bytes to zero.
cbWndExtra
Type: int
The number of extra bytes to allocate following the window instance. The system initializes the bytes to zero. If an application uses
WNDCLASS to register a dialog box created by using the CLASS directive in the resource file, it must set this member to
DLGWINDOWEXTRA.
hInstance
Type: HINSTANCE
A handle to the instance that contains the window procedure for the class.
hIcon
Type: HICON
A handle to the class icon. This member must be a handle to an icon resource. If this member is
NULL, the system provides a default icon.
hCursor
Type: HCURSOR
A handle to the class cursor. This member must be a handle to a cursor resource. If this member is
NULL, an application must explicitly set the cursor shape whenever the mouse moves into the application's window.
hbrBackground
Type: HBRUSH
A handle to the class background brush. This member can be a handle to the physical brush to be used for painting the background, or it can be a color value. A color value must be one of the following standard system colors (the value 1 must be added to
the chosen color). If a color value is given, you must convert it to one of the following
HBRUSH types:
COLOR_ACTIVEBORDER
COLOR_ACTIVECAPTION
COLOR_APPWORKSPACE
COLOR_BACKGROUND
COLOR_BTNFACE
COLOR_BTNSHADOW
COLOR_BTNTEXT
COLOR_CAPTIONTEXT
COLOR_GRAYTEXT
COLOR_HIGHLIGHT
COLOR_HIGHLIGHTTEXT
COLOR_INACTIVEBORDER
COLOR_INACTIVECAPTION
COLOR_MENU
COLOR_MENUTEXT
COLOR_SCROLLBAR
COLOR_WINDOW
COLOR_WINDOWFRAME
COLOR_WINDOWTEXT
The system automatically deletes class background brushes when the class is unregistered by using
UnregisterClass. An application should not delete these brushes.
When this member is NULL, an application must paint its own background whenever it is requested to paint in its client area. To determine whether the background must be painted, an application can either process the
WM_ERASEBKGND message or test the fErase member of the
PAINTSTRUCT structure filled by the
BeginPaint function.
lpszMenuName
Type: LPCTSTR
The resource name of the class menu, as the name appears in the resource file. If you use an integer to identify the menu, use the
MAKEINTRESOURCE macro. If this member is NULL, windows belonging to this class have no default menu.
lpszClassName
Type: LPCTSTR
A pointer to a null-terminated string or is an atom. If this parameter is an atom, it must be a class atom created by a previous call to the
RegisterClass or
RegisterClassEx function. The atom must be in the low-order word of
lpszClassName; the high-order word must be zero.
If lpszClassName is a string, it specifies the window class name. The class name can be any name registered with
RegisterClass or
RegisterClassEx, or any of the predefined control-class names.
The maximum length for lpszClassName is 256. If lpszClassName is greater than the maximum length, the
RegisterClass function will fail.
2.The following are the window styles. After the window has been created, these styles cannot be modified, except as noted.
1.WNDCLASS structure。
typedef struct tagWNDCLASS { UINT style; WNDPROC lpfnWndProc; int cbClsExtra; int cbWndExtra; HINSTANCE hInstance; HICON hIcon; HCURSOR hCursor; HBRUSH hbrBackground; LPCTSTR lpszMenuName; LPCTSTR lpszClassName; } WNDCLASS, *PWNDCLASS;
style
Type: UINT
The class style(s). This member can be any combination of the
Class Styles.
lpfnWndProc
Type: WNDPROC
A pointer to the window procedure. You must use the
CallWindowProc function to call the window procedure. For more information, see
WindowProc.
cbClsExtra
Type: int
The number of extra bytes to allocate following the window-class structure. The system initializes the bytes to zero.
cbWndExtra
Type: int
The number of extra bytes to allocate following the window instance. The system initializes the bytes to zero. If an application uses
WNDCLASS to register a dialog box created by using the CLASS directive in the resource file, it must set this member to
DLGWINDOWEXTRA.
hInstance
Type: HINSTANCE
A handle to the instance that contains the window procedure for the class.
hIcon
Type: HICON
A handle to the class icon. This member must be a handle to an icon resource. If this member is
NULL, the system provides a default icon.
hCursor
Type: HCURSOR
A handle to the class cursor. This member must be a handle to a cursor resource. If this member is
NULL, an application must explicitly set the cursor shape whenever the mouse moves into the application's window.
hbrBackground
Type: HBRUSH
A handle to the class background brush. This member can be a handle to the physical brush to be used for painting the background, or it can be a color value. A color value must be one of the following standard system colors (the value 1 must be added to
the chosen color). If a color value is given, you must convert it to one of the following
HBRUSH types:
COLOR_ACTIVEBORDER
COLOR_ACTIVECAPTION
COLOR_APPWORKSPACE
COLOR_BACKGROUND
COLOR_BTNFACE
COLOR_BTNSHADOW
COLOR_BTNTEXT
COLOR_CAPTIONTEXT
COLOR_GRAYTEXT
COLOR_HIGHLIGHT
COLOR_HIGHLIGHTTEXT
COLOR_INACTIVEBORDER
COLOR_INACTIVECAPTION
COLOR_MENU
COLOR_MENUTEXT
COLOR_SCROLLBAR
COLOR_WINDOW
COLOR_WINDOWFRAME
COLOR_WINDOWTEXT
The system automatically deletes class background brushes when the class is unregistered by using
UnregisterClass. An application should not delete these brushes.
When this member is NULL, an application must paint its own background whenever it is requested to paint in its client area. To determine whether the background must be painted, an application can either process the
WM_ERASEBKGND message or test the fErase member of the
PAINTSTRUCT structure filled by the
BeginPaint function.
lpszMenuName
Type: LPCTSTR
The resource name of the class menu, as the name appears in the resource file. If you use an integer to identify the menu, use the
MAKEINTRESOURCE macro. If this member is NULL, windows belonging to this class have no default menu.
lpszClassName
Type: LPCTSTR
A pointer to a null-terminated string or is an atom. If this parameter is an atom, it must be a class atom created by a previous call to the
RegisterClass or
RegisterClassEx function. The atom must be in the low-order word of
lpszClassName; the high-order word must be zero.
If lpszClassName is a string, it specifies the window class name. The class name can be any name registered with
RegisterClass or
RegisterClassEx, or any of the predefined control-class names.
The maximum length for lpszClassName is 256. If lpszClassName is greater than the maximum length, the
RegisterClass function will fail.
2.The following are the window styles. After the window has been created, these styles cannot be modified, except as noted.
Constant/value | Description |
---|---|
WS_BORDER0x00800000L | The window has a thin-line border. |
WS_CAPTION0x00C00000L | The window has a title bar (includes the WS_BORDER style). |
WS_CHILD0x40000000L | The window is a child window. A window with this style cannot have a menu bar. This style cannot be used with theWS_POPUP style. |
WS_CHILDWINDOW0x40000000L | Same as the WS_CHILD style. |
WS_CLIPCHILDREN0x02000000L | Excludes the area occupied by child windows when drawing occurs within the parent window. This style is used when creating the parent window. |
WS_CLIPSIBLINGS0x04000000L | Clips child windows relative to each other; that is, when a particular child window receives aWM_PAINT message, the WS_CLIPSIBLINGS style clips all other overlapping child windows out of the region of the child window to be updated. IfWS_CLIPSIBLINGS is not specified and child windows overlap, it is possible, when drawing within the client area of a child window, to draw within the client area of a neighboring child window. |
WS_DISABLED0x08000000L | The window is initially disabled. A disabled window cannot receive input from the user. To change this after a window has been created, use theEnableWindow function. |
WS_DLGFRAME0x00400000L | The window has a border of a style typically used with dialog boxes. A window with this style cannot have a title bar. |
WS_GROUP0x00020000L | The window is the first control of a group of controls. The group consists of this first control and all controls defined after it, up to the next control with theWS_GROUP style. The first control in each group usually has the WS_TABSTOP style so that the user can move from group to group. The user can subsequently change the keyboard focus from one control in the group to the next control in the group by using the direction keys. You can turn this style on and off to change dialog box navigation. To change this style after a window has been created, use theSetWindowLong function. |
WS_HSCROLL0x00100000L | The window has a horizontal scroll bar. |
WS_ICONIC0x20000000L | The window is initially minimized. Same as the WS_MINIMIZE style. |
WS_MAXIMIZE0x01000000L | The window is initially maximized. |
WS_MAXIMIZEBOX0x00010000L | The window has a maximize button. Cannot be combined with the WS_EX_CONTEXTHELP style. TheWS_SYSMENU style must also be specified. |
WS_MINIMIZE0x20000000L | The window is initially minimized. Same as the WS_ICONIC style. |
WS_MINIMIZEBOX0x00020000L | The window has a minimize button. Cannot be combined with the WS_EX_CONTEXTHELP style. TheWS_SYSMENU style must also be specified. |
WS_OVERLAPPED0x00000000L | The window is an overlapped window. An overlapped window has a title bar and a border. Same as theWS_TILED style. |
WS_OVERLAPPEDWINDOW(WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX) | The window is an overlapped window. Same as the WS_TILEDWINDOW style. |
WS_POPUP0x80000000L | The windows is a pop-up window. This style cannot be used with the WS_CHILD style. |
WS_POPUPWINDOW(WS_POPUP | WS_BORDER | WS_SYSMENU) | The window is a pop-up window. The WS_CAPTION and WS_POPUPWINDOW styles must be combined to make the window menu visible. |
WS_SIZEBOX0x00040000L | The window has a sizing border. Same as the WS_THICKFRAME style. |
WS_SYSMENU0x00080000L | The window has a window menu on its title bar. The WS_CAPTION style must also be specified. |
WS_TABSTOP0x00010000L | The window is a control that can receive the keyboard focus when the user presses the TAB key. Pressing the TAB key changes the keyboard focus to the next control with theWS_TABSTOP style. You can turn this style on and off to change dialog box navigation. To change this style after a window has been created, use theSetWindowLong function. For user-created windows and modeless dialogs to work with tab stops, alter the message loop to call theIsDialogMessage function. |
WS_THICKFRAME0x00040000L | The window has a sizing border. Same as the WS_SIZEBOX style. |
WS_TILED0x00000000L | The window is an overlapped window. An overlapped window has a title bar and a border. Same as theWS_OVERLAPPED style. |
WS_TILEDWINDOW(WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX) | The window is an overlapped window. Same as the WS_OVERLAPPEDWINDOW style. |
WS_VISIBLE0x10000000L | The window is initially visible. This style can be turned on and off by using the ShowWindow or SetWindowPos function. |
WS_VSCROLL0x00200000L | The window has a vertical scroll bar. |
Requirements
Minimum supported client | Windows 2000 Professional [desktop apps only] |
---|---|
Minimum supported server | Windows 2000 Server [desktop apps only] |
Header | Winuser.h (include Windows.h) |
相关文章推荐
- LeetCode:Longest Common Prefix
- Git 使用指南 培养使用Git的好习惯
- 【VBA研究】定时关闭MsgBox及相关未公开的API
- PHP获取一个月有多少天
- 桥头客户的作用及如何形成
- android 使程序完全退出及退回到主界面
- subgrid更新后刷新主表单
- JAVA学习笔记4---两种基础编程模型、JAVA库、类的成员
- JDK DualPivotQuicksort 源码解析
- java的精髓----对象是怎么样创建的
- jQuery Validate (摘自官网)
- MKMapView的Span和Region深入分析
- Spring连接各种数据库数据源
- H5页面属性和元素
- Pro*C/C++具体操作
- word 2010配置发布CSDN博客功能
- 通过文件的方式保存内容
- leetcode Isomorphic Strings
- 文章标题
- 弄懂SPI接口