QQ登录

只需一步,快速开始

搜索
【活动】边做笔记边学习,还能赢取奖学金!
查看: 123|回复: 0

[学习笔记] 《Windows SDK》007 Windows编程中的若干难点

[复制链接]
累计签到:49 天
连续签到:25 天
最佳答案
3 
发表于 2017-7-8 14:25:34 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
本帖最后由 BngThea 于 2017-7-15 09:48 编辑

一 核心知识点
* 窗口销毁过程
  当点击窗口右上角X关闭时,Windows的响应流程是这样的:WM_CLOSE -> M_DESTROY/WM_NCDESTROY -> WM_QUIT
  当点击关闭需要操作时,请在WM_CLOSE消息下进行处理

* 调用机制
  编程只需要考虑不同的消息怎么处理,什么时候调用(用什么消息),具体怎么调用只需要向Windows发送消息即可

* 窗口过程结束返回的值交给了负责分派消息的DispatchMessage,然而该返回值往往被无情的无视了


* 抢占式多任务
关于执行哪个线程,Windows具有最终决定权。
Windows会对每个应用程序的占用做出限定,如果超时则强制退出该进程并将其排到末尾
优势:1 给人感觉很多进程同时进行
          2 某个进程挂了,系统并不会挂

二 新API函数 与 宏
* DestroyWindow(hwnd)
用来销毁窗口,该函数会发送WM_DESTROY和WM_NCDESTROY消息并移除其键盘焦点,同时还销毁窗口的菜单,情况其线程的消息列队,销毁与该窗口相关的定时器等
如果该窗口包含其他窗口,则先销毁其他窗口,最后销毁自身,就跟子类调用析构函数一样。

* GET_X_LPARAM 和 GET_Y_LPARAM
  可以通过这两个宏定义获得鼠标所点击的x,y坐标

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
小甲鱼 + 3 + 3 支持楼主!

查看全部评分

本帖被以下淘专辑推荐:

1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋手机版Archiver( 粤公网安备 44051102000370号 | 粤ICP备11014136号

© 2010-2017 FishC.com GMT+8, 2017-7-28 12:31 Powered by Discuz! X2.5 Theme by dreambred

快速回复 返回顶部 返回列表