摘要: 1、同一份Document的多个views,在Document的一个view改变了后,如何同步其它view呢? 让所有的Views 同步更新资料的关键在于两个函数: 1)CDocument::UpdateAllViews:这个函数会巡访所有隶属同一份Document的各个Views,找到一个就通知一个,而所谓「通知」就是调用其OnUpdate 函数。2)CView::OnUpdate:我们可以在这个函数中设计绘图动作。或许是全部重绘,或许想办法只绘必要的一小部份。通常你不应该在OnUpdate 中执行绘图动作,所有的绘图动作最好都应该集中在OnDraw;你在OnUpdate函数中的行为应该是计 阅读全文
posted @ 2011-02-28 22:09 浪里飞 阅读(1702) 评论(0) 推荐(0) 编辑
摘要: 关于对话框的讨论,[2,3]中校为丰富。 DDX,是把对话框类别中的成员变量与对话框中的控制组件产生关联,于是 当对话框结束时,控制组件的内容会自动传输到这些成员变量上。 DDV,是允许我们设定对话框控制组件的内容类型以及资料(数值)范围。 参考 [1] 深入浅出MFC [2] http://blog.163.com/zhoumhan_0351/blog/static/3995422720104... 阅读全文
posted @ 2011-02-28 17:32 浪里飞 阅读(262) 评论(0) 推荐(0) 编辑
摘要: Message Mapping and Command Routing1、MFC把消息三大类:1)命令消息(WM_COMMAND):凡由UI 对象产生的消息都是这种命令消息,可能来自菜单或加速键或工具栏。SDK程序主要靠消息的wParam 辨识之,MFC程序则主要靠菜单项目的识别码(menu ID)辨识之,两者其实是相同的。 凡衍生自CCmdTarget 的类别,皆有资格接收改类型消息。几乎构造应用程序的最重要的几个类别都衍生自CCmdTarget。2)标准消息:除WM_COMMAND 之外,任何以WM_ 开头的都算是这一类。任何衍生自CWnd 之类别,均可接收此消息。3)Control No 阅读全文
posted @ 2011-02-28 13:01 浪里飞 阅读(555) 评论(0) 推荐(0) 编辑