一、创建一个空的基于对话框的项目
二、添加背景Bitmap资源
1、在添加资源时,将需要添加的背景图片放置在工程文件res文件夹中,最好是用的是24位的BMP格式图片;
2、在“资源视图”中右键鼠标Dialog处,选择“添加资源”;
3、在“添加资源”对话框中选择Bitmap,点击“导入”,选择工程文件res文件夹中的背景图片,它会添加一张IDB_BITMAP1的图片。
三、编写代码
1、找到XXXDlg.cpp文件夹下的void CXXXDlg::OnPaint()函数,在else中进行修改。
2、注释语句 CDialog::OnPaint();
防止重复调用重画函数
3、添加代码
else {
//注释该语句:防止重复调用重画函数
//CDialog::OnPaint();
//添加代码对话框背景贴图
CPaintDC dc(this);
CRect rect;
GetClientRect(&rect); //获取对话框长宽
CDC dcBmp; //定义并创建一个内存设备环境
dcBmp.CreateCompatibleDC(&dc); //创建兼容性DC
CBitmap bmpBackground;
bmpBackground.LoadBitmap(IDB_BITMAP1); //载入资源中图片,其中IDB_BITMAP1为图片资源的ID号
BITMAP m_bitmap; //图片变量
bmpBackground.GetBitmap(&m_bitmap); //将图片载入位图中
//将位图选入临时内存设备环境
CBitmap *pbmpOld=dcBmp.SelectObject(&bmpBackground);
//调用函数显示图片StretchBlt显示形状可变
dc.StretchBlt(0,0,rect.Width(),rect.Height(),&dcBmp,0,0,m_bitmap.bmWidth,m_bitmap.bmHeight,SRCCOPY);
}
字体与字体大小改变
找到XXXDlg.cpp文件夹下的void CXXXDlg::OnInitDialog()函数中添加
static CFont fontTitle;
fontTitle.CreatePointFont(240, "楷体");
GetDlgItem(IDC_Title)->SetFont(&fontTitle);//IDC_Title为需要修改对象的ID号
四、结果显示
原文:https://blog.csdn.net/z215367701/article/details/51754805