一、窗口结构分析
窗口数据结构,有一个链指针,保存所属进程。
基本算法分析:
1、遍历同级窗口集,切换进程,切换线程,置同级窗口为当前活动窗口。
2、遍历当前活动窗口的子窗口,包装消息结构体Msg,放入线程消息队列。
3、线程GetMessage取消息,分发给对应窗口结构体的CallBack函数。里面可能会回调父窗口的消息过程函数。
关于CToolBar的消息总是发送第一个父窗口的原因,在comctl32.dll中ToolBar代码段中,里面用一个全局变量保存父窗口句柄,在消息函数中,SendMessage发送给该变量窗口。
SetParent对其窗口消息的处理没有必然的关系,因为父窗口、子窗口的消息处理过程是不同的。
二、构建窗体对象集

本文详细分析了Windows窗口结构,包括窗口数据结构和基本算法,如切换活动窗口、消息处理。同时探讨了窗体对象集的构建,通过用户点击坐标判断活动窗体。此外,文章还深入讲解了事件模式,包括基本模式和解耦的固定模式、委托模式,并列举了不同编程环境的实现方式。
最低0.47元/天 解锁文章
381

被折叠的 条评论
为什么被折叠?



