《Windows程序设计》笔记 —— Chapter Three

本文介绍了Windows编程中的基本概念,包括消息结构、窗口结构等,并详细解释了常用的前缀符号及句柄表示法,如WM消息、WS风格等,帮助初学者理解Windows应用程序的工作原理。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Note:
1.Windows程序员开始时总是复制一段代码然后做相应修改(重点是深刻体会过程)
2.常量前缀注记:
CS —— Class Stye 类风格选项

CW —— Create Window创建窗体选项

DT —— Draw Text 绘制文本选项
IDI —— ID of Icon 图标ID号

IDC —— ID of Cursor 光标ID号

MB —— MessageBox 消息框选项
SND —— Sound 声音选项

WM —— Window Message 窗口消息

WS —— Window Style 窗口风格


WParam——WcharParam(16bit)LParam—— LongParam(32bit)默认为16位系统,而在32位系统中,两者均为32bit,W失去意义
LRESULT—— LongResult
#define CALLBACK __stdcall

结构 含义

MSG 消息结构

WNDCLASS窗口结构

PAINTSTRUCT绘图结构

RECT 矩形结构

句柄简介:
HINSTANCE—— Handle of Instance 实例句柄

HWND —— Handle of Window窗口句柄

HDC—— Handle of Device Content 32bit 设备描述句柄

匈牙利表示法:变两名以一个或多个小写字母开始,小写字母表示数据类型。


3.RegisterClass之后根据WndClass中的classname来CreateWindow,而classname属性在WndClass最后,多少有些降低了它的重要性,让人容易遗忘,至少刚开始时我是这样的。
4.32bit系统无需判断hprevinstance,而16bit系统需要以节省内存。
5.是否可理解所有窗口都是桌面窗口的子窗口或者间接子窗口?
6.UpdateWindow(hwnd)向hwnd发送WM_PAINT消息。
7.WM_Quit导致GetMessage返回0,消息循环结束。而PostQuitMessage通常用于响应WM_Destroy来向消息队列发送WM_Quit消息。为何不直接发送WM_Quit消息?如果这样的话在程序关闭之前你无法做任何其他操作。WM_Destroy响应函数可用于程序清理工作。
8.TraslateMsg进行键盘转换,DispatchMsg将消息交给窗口,而窗口将其交给适合的消息处理函数。
9.Windows程序所做的一切都是处理响应发送给窗口过程的消息。
10.Windows会在创建之后给窗口发送WM_CREATE消息,而不是之前一直潜意识中误解的WM_CREATE消息的响应函数来负责Create Windows。
11.消息循环和窗口过程并非并发进行。
12.DefWndProc也是你窗口的一部分。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值