更改MDI中Frame的背景
来源:互联网 发布:完美解码mac版 编辑:程序博客网 时间:2024/05/16 15:11
应用Wizard生成的MDI程序中Frame的背景是黑色的,本文将讨论如何更改该背景。需要之处的是Frame的客户区并不是由MainFrame维护的,其背景窗口的句柄为m_hWndMDIClient。故而更改背景的思路是将该句柄指向我们自行设计的窗口类。
首先新建一个窗口类,继承于CWnd,然后重写OnEreaseBkgnd()函数。
class CFmBk : public CWnd{// Constructionpublic:CFmBk();// Attributespublic:// Operationspublic:// Overrides// ClassWizard generated virtual function overrides//{{AFX_VIRTUAL(CFmBk)//}}AFX_VIRTUAL// Implementationpublic:virtual ~CFmBk();// Generated message map functionsprotected://{{AFX_MSG(CFmBk)afx_msg BOOL OnEraseBkgnd(CDC* pDC);//}}AFX_MSGDECLARE_MESSAGE_MAP()};
#include "stdafx.h"#include "ChgFrmBk.h"#include "FmBk.h"#ifdef _DEBUG#define new DEBUG_NEW#undef THIS_FILEstatic char THIS_FILE[] = __FILE__;#endif/////////////////////////////////////////////////////////////////////////////// CFmBkCFmBk::CFmBk(){}CFmBk::~CFmBk(){}BEGIN_MESSAGE_MAP(CFmBk, CWnd)//{{AFX_MSG_MAP(CFmBk)ON_WM_ERASEBKGND()//}}AFX_MSG_MAPEND_MESSAGE_MAP()/////////////////////////////////////////////////////////////////////////////// CFmBk message handlersBOOL CFmBk::OnEraseBkgnd(CDC* pDC) {// TODO: Add your message handler code here and/or call defaultCRect rt;GetClientRect(&rt);pDC->FillSolidRect(&rt,RGB(255,0,0));//设置背景为红色return true;}
准备该类后,在CMainFrame中重写OnCreateClient()函数:
BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext) {// TODO: Add your specialized code here and/or call the base classif(CMDIFrameWnd::OnCreateClient(lpcs,pContext)){m_FmClient.SubclassWindow(m_hWndMDIClient);return TRUE;}return FALSE;}
完成!
- 更改MDI中Frame的背景
- 【转载】更改MDI窗体背景颜色
- js中更改div的背景颜色:
- iOS更改UISearchBar里面的UITextField的frame以及去除UISearchBar的背景
- java中有关Frame背景的设置总结
- 更改frame的动画效果
- Delpi在MDI窗口中显示图形控件及指定背景的解决方案
- 在MDI主窗体中画背景的最简单方法
- Delpi在MDI窗口中显示图形控件及指定背景的解决方案
- 更改UIView的背景
- 更改RadioButton的背景
- 更改UIView的背景
- MDI中,have/no splitter(拆分窗口)的ChildFrame Create区别 / Child Frame与MainFrame:public CMDIFrameWnd Create区别
- 修改 MDI child Frame 窗口名字的方法
- 更改easyui中Accordion(分类)的背景
- 在MDI主窗口中设置图像背景
- java中MDI的实现
- Java中MDI的实现
- asp.net 用户权限1
- 振奋人心的程序代码注释
- 主人牵狗散步晕倒丧命 忠犬不离含泪守殡棺
- asp.net 用户权限2
- 复制两个不同类的对象的属性
- 更改MDI中Frame的背景
- strlen和sizeof的区别
- 网络摄像头1 mjpg-streamer使用方法
- 过滤器
- 中文分词算法经典
- java参数传递(超经典)
- 动态创建GridView模版列
- Unix调试的瑞士军刀:lsof
- 中文分词算法总结