1 什么是客户区/非客户区?
2 窗口(框架/frame)的客户区和视图(view)的客户区的区别?
对于多文档(MDI)应用程序:
图1

图2
1. 窗口框架的客户区就是指图中的灰色部分:即图2蓝色方框内区域,框架的非客户区就是指蓝色方框之外的窗口区域,包括程序图标,标题栏,菜单,最大最小/关闭按纽,左右两个框和底下的状态条.
2. 视图的客户区就是指图中绿色部分:即图2红色方框内的区域,视图的非客户区就是指视图部分红色方框之外的区域,包括:文件图标,标题栏,三个按纽和两个滚动条.
3. 从图中可以看出,工具栏(工具条)不属于框架的非客户区,它跟视图是框架客户区内的"兄弟".它也是一个窗口,读者不妨再拖拽工具条,它还可以拖出框架窗口区域.
4. 因此,以后编程中,对于CClientDC,CWindowDC,GetClientDC(),GetWindowDC()应该可以很容易就区分开了.
以上是我自己搜索资料,整理总结出来的,希望对一些人有帮助.如果有不对的地方还请指正.
5. 至于在单文档中,每个概念所指的区域跟上面类似分析即可.
转自:http://hi.baidu.com/chenfalei/blog/item/da8440fb331f0767024f56e5.html
本文详细解释了窗口框架的客户区与非客户区的概念,并通过实例对比了视图客户区的区别,清晰地展示了各组成部分及其在多文档界面中的应用。
4332

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



