MFC实现为窗体添加的背景图片

简介: 将一个bmp图片添加到资源中 在资源视图中更改位图资源的ID为IDB_BITMAP_BACKGROUND。   第一种方法:   在Dialog中添加一个Picture Control控件,将Picture Control控件的Type属性 更改为Bitmap。

将一个bmp图片添加到资源中

在资源视图中更改位图资源的ID为IDB_BITMAP_BACKGROUND。

 

第一种方法:

 

在Dialog中添加一个Picture Control控件,将Picture Control控件的Type属性

更改为Bitmap。设置Image属性为IDB_BITMAP_BACKGROUND。

这样图片自动加载到窗口中。

 

第二种方法:

 

添加消息函数OnEraseBkgnd

在BOOL 类名::OnEraseBkgnd(CDC* pDC)函数中添加如下代码

 

BOOL 类名::OnEraseBkgnd(CDC* pDC)

{

     // TODO: 在此添加消息处理程序代码和/或调用默认值

     CRect rect; 

 

     CDC   memDC; 

 

     CBitmap bmpBackground; 

 

     CBitmap* pOldMemBmp=NULL; 

 

     GetWindowRect(&rect); 

 

     bmpBackground.LoadBitmap(IDB_BITMAP_BACKGROUND); 

 

     memDC.CreateCompatibleDC(pDC); 

 

     pOldMemBmp=memDC.SelectObject(&bmpBackground); 

 

     pDC->BitBlt(0,0,rect.Width(),rect.Height(),&memDC,0,0, SRCCOPY); 

 

     if(pOldMemBmp)

 

         memDC.SelectObject(pOldMemBmp); 

 

     return   TRUE;

 

}

技术改变世界! --狂诗绝剑
目录
相关文章
|
4月前
|
开发框架 数据可视化 C#
|
6月前
[MFC] 对话框自带滚动条的使用
[MFC] 对话框自带滚动条的使用
158 0
MFC修改窗口背景颜色
MFC修改窗口背景颜色
276 0
|
存储 Windows
MFC 窗体背景图片设置
很多人在做MFC 界面的时候想要给对话框加入背景图片,很多人都会想到在OnPaint()里面来加一段代码来实现,其实这样做并不怎么科学,因为它会导致窗口不断重绘,在很多项目中窗口会闪烁(比如带播放视频的一个对话框);下面的方法我感觉更为合理。
2086 0
|
程序员 Windows
MFC添加背景图片三种方法
方法一: 1、声明成员变量CBrush m_brush;2、在InitDialog中添加代码: ? CBitmap bmp; bmp.LoadBitmap(IDB_BITMAP1);  //IDB_BITMAP1是图片资源ID m_brush.
1515 0
MFC设置窗体大小SetWindowPos
SetWindowPos(NULL,0,0,200,300,SWP_NOMOVE);     表示不考虑(0,0),仅仅将大小改为200x300,位置不变    SetWindowPos(NULL,0,0,200,300,SWP_NOMOVE);    表示不考虑200X300,只是把位置挪到(0,0).
4126 0