下载本文示例代码
在使用VC6.0/5.0的AppWizard生成MDI应用的时候,我们发现MDI主窗口的客户区背景千篇一律的是深灰的。VC6.0/5.0并没有提供修改其背景色的方法。甚至使用SDK编程也没有好的方法修改背景色。以至于微软的产品如Office也是灰蒙蒙的背景。那么,有没有办法将背景设置为自己喜欢的颜色呢?
笔者在学习过程中摸索出一套随意改变客户区窗口颜色的方法。利用这套方法,可以将客户区窗口设为256色背景甚至设为BITMAP位图以至于动画等等。大大地增强了程序的多媒体效果。
先介绍对MDI客户窗口编程的基本原理。
一、MDI客户窗口
一个MDI应用的主框架窗口包含一个特殊的子窗口称为MDICLIENT窗口。MDICLIENT窗口负责管理主框架窗口的客户区。MDICLIENT窗口本身有自己的子窗口即由CMDIChildWnd派生的文档窗口,也就是MDI子窗口。MDI主框架窗口负责管理MDICLIENT子窗口。当控制条(菜单条,状态条等)发生变化时,MDI主框架窗口重新配置MDICLIENT窗口。MDICLIENT子窗口负责管理全部的MDI子窗口。父窗口负责将某些命令传递到子窗口。因此,消息队列发向MDI子窗口的消息由MDICLIENT窗口负责传递,发向MDICLIENT窗口和MDI子窗口的消息由主框架窗口负责传递。这样,我们可以在主框架窗口截获关于MDICLIENT窗口的重画消息然后加入自己设计的代码。
共2页。 1 2 :
在使用VC6.0/5.0的AppWizard生成MDI应用的时候,我们发现MDI主窗口的客户区背景千篇一律的是深灰的。VC6.0/5.0并没有提供修改其背景色的方法。甚至使用SDK编程也没有好的方法修改背景色。以至于微软的产品如Office也是灰蒙蒙的背景。那么,有没有办法将背景设置为自己喜欢的颜色呢?
笔者在学习过程中摸索出一套随意改变客户区窗口颜色的方法。利用这套方法,可以将客户区窗口设为256色背景甚至设为BITMAP位图以至于动画等等。大大地增强了程序的多媒体效果。
先介绍对MDI客户窗口编程的基本原理。
一、MDI客户窗口
一个MDI应用的主框架窗口包含一个特殊的子窗口称为MDICLIENT窗口。MDICLIENT窗口负责管理主框架窗口的客户区。MDICLIENT窗口本身有自己的子窗口即由CMDIChildWnd派生的文档窗口,也就是MDI子窗口。MDI主框架窗口负责管理MDICLIENT子窗口。当控制条(菜单条,状态条等)发生变化时,MDI主框架窗口重新配置MDICLIENT窗口。MDICLIENT子窗口负责管理全部的MDI子窗口。父窗口负责将某些命令传递到子窗口。因此,消息队列发向MDI子窗口的消息由MDICLIENT窗口负责传递,发向MDICLIENT窗口和MDI子窗口的消息由主框架窗口负责传递。这样,我们可以在主框架窗口截获关于MDICLIENT窗口的重画消息然后加入自己设计的代码。
共2页。 1 2 :
下载本文示例代码
深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程深入MDI客户窗口编程
阅读(264) | 评论(0) | 转发(0) |