【MFC】MFC插入背景图片(自绘的方式)

本文介绍了一个具体的登录界面绘制实现过程,包括背景填充、字体样式设置及使用图片资源进行装饰等步骤。通过CPaintDC获取设备上下文并进行一系列绘图操作,确保登录界面呈现出预期的视觉效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

void XYLogin::OnPaint()
{
	
	if (IsIconic())//最小化消息
	{
		CPaintDC dc(this); // device context for painting
						   // TODO: 在此处添加消息处理程序代码
						   // 不为绘图消息调用 CDialogEx::OnPaint()

		SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);

	}
	else
	{
		CPaintDC dc(this);

		CRect   rect;
		GetClientRect(rect);
		dc.FillSolidRect(rect, RGB(235, 246, 255)); //绘制背景
		SetText(&dc, &rect);//设置字体样式

		CRect rc;
		GetWindowRect(&rc);
		CImage mImage_title,mImage_footer;
		if ((mImage_title.Load(_T(Util::GetWorkPath() + "\\img\\login_title_concrete.png")) == S_OK)&&(mImage_footer.Load(_T(Util::GetWorkPath() + "\\img\\login_crop_info_concrete.png"))) == S_OK)
		{
			mImage_title.Draw(GetDC()->GetSafeHdc(), CRect(0, 0, rc.Width(), rc.Height() / 6+10));
			mImage_footer.Draw(GetDC()->GetSafeHdc(), CRect(0, rc.Height()/7*5+25, rc.Width(), rc.Height()-30));
		}
	}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值