客户区和非客户区指的什么?窗口客户区和视图客户区的区别

来源:互联网 发布:巴纳姆效应知乎 编辑:程序博客网 时间:2024/05/15 07:06

转自:http://oliver258.blog.51cto.com/750330/293084

1,什么是客户区/非客户区?
2, 窗口(框架/frame)的客户区和视图(view)的客户区的区别?
 
1,在一个MDI(多文档)应用程序中每个概念如下图所标示:
效果如下图
1,窗口框架的客户区就是指图中的灰色部分:即蓝色方框内区域,框架的非客户区就是指蓝色方框之外的窗口区域,包括程序图标,标题栏,菜单,最大最小/关闭按纽,左右两个框和底下的状态条.
2,视图的客户区就是指图中绿色部分:即红色方框内的区域,视图的非客户区就是指视图部分红色方框之外的区域,包括:文件图标,标题栏,三个按纽和两个滚动条.
3,从图中可以看出,工具栏(工具条)不属于框架的非客户区,它跟视图是框架客户区内的"兄弟".它也是一个窗口,读者不妨再拖拽工具条,它还可以拖出框架窗口区域.
4,因此,以后编程中,对于CClientDC,CWindowDC,GetClientDC(),GetWindowDC()应该可以很容易就区分开了.
5,至于在单文档中,每个概念所指的区域跟上面类似分析即可