Visual C++ 6.0 开发win32 窗口程序 -- 学习(2)

本文系统的学习下windows应用程序开发的基本知识。

1 句柄 hwnd就是上一篇hello world里见到的句柄,此外还有hinstance等,绘图还要用到hdc,句柄是绕不过去的,要系统了解一下。

句柄类型说明句柄类型说明
HWND窗口HDC设备环境
HINSTANCE当前实例HBITMAP位图
HCURSOR光标HICON图标
HFONT字体HMENU菜单
HPEN画笔HFILE文件
HBRUSH画刷

2 消息

消息结构体包括hwnd, message, wparam, lparam, time, pt组成,字参数wparam和长字参数lparam与具体消息号的值有关。

VC++存在几种系统定义的消息分类,前缀如下:BM表示按钮控件消息,CB表示组合框消息,DM表示下压式按钮控件消息,EM表示编辑控件消息,LB表示列表控件消息,SBM表示滚动条消息,WM表示窗口消息。

WM_LBUTTONDOWN点击鼠标左键时产生此消息
WM_KEYDOWN按下非系统键时产生此消息
WM_CHAR按下非系统键时产生此消息
WM_CREATECreateWindow函数发出此消息
WM_CLOSE关闭窗口时产生此消息
WM_DESTROYDestroyWindow函数发出的信息
WM_QUITPostQuitMessage函数发出的信息
WM_PAINT窗口改变等事件产生此消息

3 消息循环

translate负责将消息转换为字符信息;

dispatch负责将消息传递到指定窗口函数。

当GetMessage返回0值,即WM_QUIT时,结束消息循环。

4 窗口函数

窗口函数定义了应用程序对接收到的不同消息的响应。通常由switch组成,用于应对不同消息。

当窗体结束时,调用PostQuitMessage,函数发出0值消息,再次进入消息循环时,就可以结束消息循环了。

如果是选择了DefWindowProc,则进入默认消息处理函数,这主要是保证每条消息都得到相应处理。

了解以上内容,就可以对Helloworld程序做一些修改,看看不同参数的窗口是什么样子的。

把窗口风格修改后,最大化和最小化按钮就没有了,还出来了滚动条。 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Intimes

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值