在创建windows窗口时,我们常需要指定创建窗口的类型。下表是windows中定义的窗口样式表。
virtual BOOL Create(HWND hWndParent, WCHAR* pwszClassName, WCHAR* pwszWindowName, UINT uID, HICON hIcon, DWORD dwStyle = WS_OVERLAPPEDWINDOW, DWORD dwExStyle = WS_EX_APPWINDOW, int x = CW_USEDEFAULT, int y = CW_USEDEFAULT, int cx = CW_USEDEFAULT, int cy = CW_USEDEFAULT);
常量/值 | 描述 |
---|---|
WS_BORDER 0x00800000L | 此窗口具有细线边框。 |
WS_CAPTION 0x00C00000L | 窗口的标题栏 (包含 WS_BORDER 样式) 。 |
WS_CHILD 0x40000000L | 窗口是一个子窗口。 具有此样式的窗口不能有菜单栏。 此样式不能与 WS_POPUP 样式一起使用。 |
WS_CHILDWINDOW 0x40000000L | 与 WS_CHILD 样式相同。 |
WS_CLIPCHILDREN 0x02000000L | 当在父窗口中进行绘制时,排除子窗口占用的区域。 此样式在创建父窗口时使用。 |
WS_CLIPSIBLINGS 0x04000000L | 相对于彼此的位置剪辑子窗口;也就是说,当某个特定的子窗口收到一个 WM_PAINT 消息时, WS_CLIPSIBLINGS 样式会将子窗口中的所有其他重叠子窗口从子窗口的所有其他子窗口中剪切掉。 如果未指定 WS_CLIPSIBLINGS 并且子窗口重叠,则在子窗口的工作区中进行绘制时,可以在相邻子窗口的工作区中进行绘制。 |
WS_DISABLED 0x08000000L | 窗口最初处于禁用状态。 禁用的窗口无法接收来自用户的输入。 若要在创建窗口后对此进行更改,请使用 EnableWindow 函数。 |
WS_DLGFRAME 0x00400000L | 窗口的边框通常与对话框一起使用。 具有此样式的窗口不能有标题栏。 |
WS_GROUP 0x00020000L | 窗口是一组控件的第一个控件。 组包括此第一个控件和在其后定义的所有控件,直到下一个具有 WS_GROUP 样式的控件。 每个组中的第一个控件通常具有 WS_TABSTOP 样式,这样用户就可以从 "组" 移动到 "组"。 然后,用户可以使用方向键将键盘焦点从组中的一个控件更改为组中的下一个控件。可以打开和关闭此样式来更改对话框导航。 若要在创建窗口后更改此样式,请使用 SetWindowLong 函数。 |
WS_HSCROLL 0x00100000L | 窗口具有水平滚动条。 |
WS_ICONIC 0x20000000L | 窗口最初最小化。 与 "WS_MINIMIZE " 样式相同。 |
WS_MAXIMIZE 0x01000000L | 窗口最初处于最大化状态。 |
WS_MAXIMIZEBOX 0x00010000L | 窗口有最大化按钮。 不能与 WS_EX_CONTEXTHELP 样式组合。 还必须指定 WS_SYSMENU 样式。 |
WS_MINIMIZE 0x20000000L | 窗口最初最小化。 WS_ICONIC 样式相同。 |
WS_MINIMIZEBOX 0x00020000L | 该窗口包含 "最小化" 按钮。 不能与 WS_EX_CONTEXTHELP 样式组合。 还必须指定 WS_SYSMENU 样式。 |
WS_OVERLAPPED 0x00000000L | 窗口是重叠窗口。 重叠窗口具有标题栏和边框。 与 " WS_TILED " 样式相同。 |
WS_OVERLAPPEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX) | 窗口是重叠窗口。 与 WS_TILEDWINDOW 样式相同。 |
WS_POPUP 0x80000000L | 窗口是一个弹出窗口。 此样式不能与 WS_CHILD 样式一起使用。 |
WS_POPUPWINDOW (WS_POPUP | WS_BORDER | WS_SYSMENU) | 窗口是一个弹出窗口。 必须结合 WS_CAPTION 和 ws_POPUPWINDOW 样式,使窗口菜单可见。 |
WS_SIZEBOX 0x00040000L | 窗口的大小调整边框。 与 WS_THICKFRAME 样式相同。 |
WS_SYSMENU 0x00080000L | 窗口的标题栏上有一个窗口菜单。 还必须指定 WS_CAPTION 样式。 |
WS_TABSTOP 0x00010000L | 窗口是一个控件,当用户按 TAB 键时,该控件可以接收键盘焦点。 按 TAB 键会将键盘焦点更改为带有 WS_TABSTOP 样式的下一个控件。可以打开和关闭此样式来更改对话框导航。 若要在创建窗口后更改此样式,请使用 SetWindowLong 函数。 对于用户创建的窗口和无模式对话框,若要使用制表位,请更改消息循环以调用 IsDialogMessage 函数。 |
WS_THICKFRAME 0x00040000L | 窗口的大小调整边框。 与 WS_SIZEBOX 样式相同。 |
WS_TILED 0x00000000L | 窗口是重叠窗口。 重叠窗口具有标题栏和边框。 与 WS_OVERLAPPEDWINDOW 样式相同。 |
WS_TILEDWINDOW (WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_THICKFRAME | WS_MINIMIZEBOX | WS_MAXIMIZEBOX) | 窗口是重叠窗口。 与 WS_OVERLAPPEDWINDOW 样式相同。 |
WS_VISIBLE 0x10000000L | 窗口最初可见。 可以通过使用 ShowWindow 或 SetWindowPos 函数来打开和关闭此样式。 |
WS_VSCROLL 0x00200000L | 窗口具有垂直滚动条。 |
日期:2020-04-11 22:50:11 来源:oir作者:oir