DoubleLi

qq: 517712484 wx: ldbgliet

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

2014年4月27日

摘要: 首先,应该清楚MFC的消息循环(::GetMessage,::PeekMessage),消息泵(CWinThread::PumpMessage)和MFC的消息在窗口之间的路由是两件不同的事情。在MFC的应用程序中(应用程序类基于CWinThread继承),必须要有一个消息循环,他的作用是从应用程序的... 阅读全文
posted @ 2014-04-27 22:35 DoubleLi 阅读(1004) 评论(0) 推荐(0)

摘要: 在Windows应用程序中,窗体是由一种称为“UI线程(User Interface Thread)”的特殊类型的线程创建的。首先,UI线程是一种“线程”,所以它具有一个线程应该具有的所有特征,比如有一个线程函数和一个线程ID。其次,“UI线程”又是“特殊”的,这是因为UI线程的线程函数中会创建一种... 阅读全文
posted @ 2014-04-27 22:07 DoubleLi 阅读(624) 评论(0) 推荐(0)

摘要: 一 Windows中有一个系统消息队列,对于每一个正在执行的Windows应用程序,系统为其建立一个“消息队列”,即应用程序队列,用来存放该程序可能 创建的各种窗口的消息。应用程序中含有一段称作“消息循环”的代码,用来从消息队列中检索这些消息并把它们分发到相应的窗口函数中。二 Windows为当前执... 阅读全文
posted @ 2014-04-27 21:50 DoubleLi 阅读(3487) 评论(0) 推荐(1)

摘要: 多态的实现机制有两种,一是通过查找绝对位置表,二是查找名称表;两者各有优缺点,那么为什么mfc的消息映射采用了第二种方法,而不是c++使用的第一种呢?因为在mfc的gui类库是一个庞大的继承体系,而里面的每个类有很多成员函数(只说消息反映相关的成员函数啊),而且在派生类中,需要改写的也比较少(我用来... 阅读全文
posted @ 2014-04-27 15:45 DoubleLi 阅读(8714) 评论(0) 推荐(2)

摘要: 前言由于工作需要,这几天学了一点MFC,在AFX里看到很多熟悉的东西,如类型信息,序列化,窗口封装和消息分派。几乎每个界面库都必须提供这些基础服务,但提供的手法却千差万别。MFC大量地借用了宏,映射表来实现,而VCL则更多的在语言级别上给与支持。这其实是很容易理解的,因为C++是一个标准,不会因某个... 阅读全文
posted @ 2014-04-27 15:37 DoubleLi 阅读(559) 评论(0) 推荐(0)