怎么给MFC的对话框加背景图片
这个我会添加,主要是点击确定以后弹出的下面这个对话框怎么添加背景,谁能教教我呀! 展开
1、新建MFC应用程序。
2、在应用程序中,选择基于对话框,其他保持默认即可。
3、右击项目,选择添加-资源。
4、在添加资源对话框中,点击导入,选择要作为背景的图片。
5、在工具箱找到Picture控件,托到界面中。
6、在界面上点击选中Picture控件,然后在属性的Type下拉框中,选择Bitmap。
7、再在Picture控件的属性的Type下拉框中插入的图片资源,选择好后,图片就可以加载进对话框了。
8、运行程序,看到背景已经变成你设置的图片。
1、把你的图包含到程序的“Bitmap资源”里,提示说该资源使用了大于256色的调色板,在VC里无法编辑等等,点确定就可以
2、定位到 void CXXXDlg::OnPaint(),在if()...else()中的else()下添加如下代码
else
{
//CDialog::OnPaint();//要禁止这个调用
CPaintDC dc(this);
CRect rect;
GetClientRect(&rect);
CDC dcMem;
dcMem.CreateCompatibleDC(&dc);
CBitmap bmpBackground;
bmpBackground.LoadBitmap(IDB_BITMAP);
//IDB_BITMAP是你自己的图对应的ID
BITMAP bitmap;
bmpBackground.GetBitmap(&bitmap);
CBitmap *pbmpOld=dcMem.SelectObject(&bmpBackground);
dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcMem,0,0,
bitmap.bmWidth,bitmap.bmHeight,SRCCOPY);
}
但是弹出的这个对话框里没有On_paint()呀。。应该把那些代码加在哪呢?我都试过了都没有显示呀。。
你可以为后面弹出的对话框定义一个类,这个类里面就有On_paint()函数。然后在On_paint()函数里添加添加背景图的代码。要注意,后面弹出的对话框一定要用这个类来声明。