在MDI主窗口中设置图像背景
来源:互联网 发布:linux的dd命令SD卡 编辑:程序博客网 时间:2024/06/05 17:51
1.创建一个多文档应用程序,工程名为NoChild。
2.导入背景位图IDB_CAR
3.添加新的类CBgWnd。基类选择generic CWnd类。
4.重载CBgWnd类的OnEraseBkgnd(CDC *pDC)函数。
BOOL CBgWnd::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
CDC memDc;
CBitmap bmp;
CRect clientRect;
BITMAP bitmap;
GetClientRect(&clientRect);
bmp.LoadBitmap(IDB_CAR);
bmp.GetObject(sizeof(BITMAP), &bitmap);
memDc.CreateCompatibleDC(pDC);
CBitmap *pOldBmp = memDc.SelectObject(&bmp);
pDC->StretchBlt(clientRect.left, clientRect.top, clientRect.Width(), clientRect.Height(), &memDc, 0, 0, bitmap.bmWidth, bitmap.bmHeight, SRCCOPY);
memDc.SelectObject(pOldBmp);
memDc.DeleteDC();
return TRUE;
//return CWnd::OnEraseBkgnd(pDC);
}
5.重载CBgWnd类的OnSize(UINT nType, int cx, int cy) 函数。
void CBgWnd::OnSize(UINT nType, int cx, int cy)
{
CWnd::OnSize(nType, cx, cy);
// TODO: Add your message handler code here
Invalidate();
}
6.在CMainFrame类中添加CBgWnd类型变量。
CBgWnd m_bgWnd;
7.在CMainFrame类OnCreate函数中添加
if (!m_bgWnd.SubclassWindow(m_hWndMDIClient))
{
return -1;
2.导入背景位图IDB_CAR
3.添加新的类CBgWnd。基类选择generic CWnd类。
4.重载CBgWnd类的OnEraseBkgnd(CDC *pDC)函数。
BOOL CBgWnd::OnEraseBkgnd(CDC* pDC)
{
// TODO: Add your message handler code here and/or call default
CDC memDc;
CBitmap bmp;
CRect clientRect;
BITMAP bitmap;
GetClientRect(&clientRect);
bmp.LoadBitmap(IDB_CAR);
bmp.GetObject(sizeof(BITMAP), &bitmap);
memDc.CreateCompatibleDC(pDC);
CBitmap *pOldBmp = memDc.SelectObject(&bmp);
pDC->StretchBlt(clientRect.left, clientRect.top, clientRect.Width(), clientRect.Height(), &memDc, 0, 0, bitmap.bmWidth, bitmap.bmHeight, SRCCOPY);
memDc.SelectObject(pOldBmp);
memDc.DeleteDC();
return TRUE;
//return CWnd::OnEraseBkgnd(pDC);
}
5.重载CBgWnd类的OnSize(UINT nType, int cx, int cy) 函数。
void CBgWnd::OnSize(UINT nType, int cx, int cy)
{
CWnd::OnSize(nType, cx, cy);
// TODO: Add your message handler code here
Invalidate();
}
6.在CMainFrame类中添加CBgWnd类型变量。
CBgWnd m_bgWnd;
7.在CMainFrame类OnCreate函数中添加
if (!m_bgWnd.SubclassWindow(m_hWndMDIClient))
{
return -1;
}
0 0
- 在MDI主窗口中设置图像背景
- MDI应用的主框架窗口背景设置
- C#给MDI主窗口添加背景
- Delpi在MDI窗口中显示图形控件及指定背景的解决方案
- Delpi在MDI窗口中显示图形控件及指定背景的解决方案
- JAVA实现可设置背景的MDI窗口
- 在MDI主框架窗口中添加图标Ico
- 设置MDI窗体,设置MDI背景
- 在MFC的MDI程序中设置子窗口客户区大小
- 在MDI窗口中防止子窗口闪烁
- 在MDI主框架窗口中添加位图(在视中加载位图)
- 在MDI主窗体中画背景的最简单方法
- NET MDI子窗口设置
- 在MDI主框架窗口中添加位图(转载自CSDN VC编程知识总结)
- 在VC++项目中为MDI主框架窗口添加位图
- 在VC++项目中为MDI主框架窗口添加位图
- 在MDI窗口中放置TabCtrl的方法
- 在Java MDI窗口中加入滚动条
- Jenkins系列之—15 配置Jenkins用户和权限
- iOS学习可用网址
- Fourier Series Intro - Laplace Series
- visio 画 弯曲 箭头 ( 波浪线 曲线)
- Objective-C---9---内存管理 补充
- 在MDI主窗口中设置图像背景
- Xcode Build Search Paths设置
- DLL库的Def
- 设计模式之原型模式
- 训练自己haar-like特征分类器并识别物体(2)
- 002-storm基本概念
- iOS绘图教程
- 我的BIOS之行(2)-Aptio BIOS Overview
- 智能优化算法小结