WIN32窗口类风格和窗口风格(备查询)
发布日期:2021-06-30 12:12:15
浏览次数:2
分类:技术文章
本文共 2605 字,大约阅读时间需要 8 分钟。
一.WNDCLASS
typedef struct { UINT cbSize //这个结构体的长度,一般用sizeof(WNDCLASSEX)设置 UINT style //窗口式样 WNDPROC lpfnWndProc //窗口消息处理的函数名 int cbClsExtra //分配给窗口类结构之后的额外字节数,一般为0 int cbWndExtra //分配给窗口实例之后的额外字节数,一般为0 HINSTANCE hInstance //想要申请的窗口实例句柄 HICON hIcon //运行时的图标,NULL时取系统缺省图标 HCURSOR hCursor //光标 HBRUSH hbrBackground //背景 LPCTStr lpszMenuName //菜单 LPCTStr lpszClassName //窗口名 HICON hIconSm; //缩小时的图标,NULL时取系统缺省图标} WNDCLASSEX, *PWNDCLASSEX;
窗口式样style的值可用下表的值组合起来设置,窗口处理函数名lpfnWndProc和hInstance不能设置错。光标有2个hIcon和hIconSm,当取不到值时自动分配一个系统缺省值。光标hCursor可选择下面的光标ID设置到结构体中去。关于图标、背景、菜单后面有专门章节介绍。下面在上一章的基础之上,修改部分数据,看看有什么变化。
设置值 | 解说 |
---|---|
CS_HREDRAW | 窗口客户区宽度发生改变时重绘窗口 |
CS_VREDRAW | 窗口客户区高度发生改变时重绘窗口 |
CS_DBLCLKS | 鼠标双击时系统所发的消息 |
CS_NOCLOSE | 禁用系统菜单中的“关闭”命令 |
CS_OWNDC | 为该窗口类的各窗口分配各自独立的设备环境 |
CS_CLASSDC | 为该窗口类的各窗口分配一个共享的设备环境 |
CS_PARENtdC | 指定子窗口继承其父窗口的设备环境 |
CS_SAVEBITS | 把被窗口覆盖的屏幕部分作为位图保存起来。 当窗口被刷新时,系统使用被保存的位图来重画窗口。 |
CS_BYTEALIGNCLIENT | Aligns the window's client area on a byte boundary (in the x direction). This style affects the width of the window and its horizontal placement on the display. |
CS_BYTEALIGNWINDOW | Aligns the window on a byte boundary (in the x direction). This style affects the width of the window and its horizontal placement on the display. |
CS_GLOBALCLASS | Specifies that the window class is an application global class. For more information, see Application Global Classes. |
二.WS_
HWND CreateWindow( LPCTSTR lpClassName, //窗口名 LPCTSTR lpWindowName, //窗口标题 DWORD dwStyle, //窗口式样 int x, //窗口左上角的x坐标 int y, //窗口左上角的y坐标 int nWidth, //窗口的宽度 int nHeight, //窗口的高度 HWND hWndParent, //父窗口句柄 HMENU hMenu, //菜单句柄 HINSTANCE hInstance, //实例句柄 LPVOID lpParam //创建参数);
设置值 | 解说 |
---|---|
WS_OVERLAPPEDWINDOW | 层叠式窗口,有边框、标题栏、系统菜单、最大最小化按钮,是以下几种风格的集合:WS_OVERLAPPED, WS_CAPTION, WS_SYSMENU, WS_THICKFRAME, WS_MINIMIZEBOX, WS_MAXIMIZEBOX |
WS_POPUPWINDOW | 弹出式窗口,是以下几种风格的集合: WS_BORDER,WS_POPUP,WS_SYSMENU。WS_CAPTION与WS_POPUPWINDOW风格一起使用时窗口菜单才能可见 |
WS_OVERLAPPED | 层叠式窗口,有标题栏和边框,与WS_TILED风格类似 |
WS_POPUP | 弹出式窗口,与WS_CHILD不能同时使用 |
WS_BORDER | 窗口有单线边框 |
WS_CAPTION | 窗口有标题栏 |
WS_CHILD | 子窗口,不能与WS_POPUP同时使用 |
WS_DISABLED | 为无效窗口 |
WS_HSCROLL | 水平滚动条 |
WS_ICONIC | 初始化为最小化 |
WS_MAXIMIZE | 初始化为最大化 |
WS_MAXIMIZEBOX | 有最大化按钮 |
WS_MINIMIZE | 与WS_MAXIMIZE一样 |
WS_MINIMIZEBOX | 窗口有最小化按钮 |
WS_SIZEBOX | 边框可进行大小控制的窗口 |
WS_SYSMENU | 创建一个有系统菜单的窗口,必须与WS_CAPTION风格同时使用 |
WS_THICKFRAME | 创建一个大小可控制的窗口,与WS_SIZEBOX风格一样. |
WS_TILED | 创建一个层叠式窗口,有标题栏 |
WS_VISIBLE | 窗口为可见 |
WS_VSCROLL | 窗口有垂直滚动条 |
转载地址:https://jadeshu.blog.csdn.net/article/details/70477539 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
网站不错 人气很旺了 加油
[***.192.178.218]2024年04月12日 13时09分51秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
自动化测试介绍与分类
2019-04-30
软件开发模型与测试模型
2019-04-30
jenkins学习笔记第五篇使用参数化解决ant+jemeter生成报告问题
2019-04-30
超详细Shell学习教程第三篇
2019-04-30
JAVA单元测试框架-12-java代码重复执行失败的测试用例
2019-04-30
JAVA单元测试框架-13-TestNG中的Listener监听
2019-04-30
JAVA单元测试框架-14-实现TestNG失败案例重跑
2019-04-30
Spring学习-4-Aop面向切面编程
2019-04-30
Spring学习-5-JdbcTemplate数据库操作
2019-04-30
Spring学习-6-Spring事务管理
2019-04-30
MyBatis 初步了解
2019-04-30
MyBatis 配置文件
2019-04-30
MyBatis的动态SQL
2019-04-30
MyBatis学习 关联映射
2019-04-30
MyBatis 一对多 多对多关联映射
2019-04-30
Spring整合MyBatis
2019-04-30
Git进阶-1-GIT下载初识Git
2019-04-30
Git进阶-2-本地配置GIt
2019-04-30
Git进阶-3-GIt其他操作
2019-04-30
Git进阶-4-Git撤销操作
2019-04-30