MFC—界面设计(控件自适应,添加背景图,Static背景颜色设置)

本文介绍了如何在MFC应用中实现界面控件随窗口大小自适应,包括设置控件自适应的代码实现和注意事项。同时,讲解了如何添加背景图片以及改变Static控件的背景颜色,提供了具体的资源导入步骤和OnPaint()函数的使用方法,以达到对话框背景美化的效果。
摘要由CSDN通过智能技术生成

1、控件随着窗口自适应
首先在类视图里面添加OnSize()函数,然后添加一个ChangeSize()函数,头文件中添加如下

//控件自适应变量
	POINT old;
	CRect m_rect;
	void ChangeSize(UINT nID, int x, int y);
	afx_msg void OnSize(UINT nType, int cx, int cy);

在OnInitDialog中

//控件自适应
	GetClientRect(&m_rect);
	old.x = m_rect.right - m_rect.left;
	old.y = m_rect.bottom - m_rect.top;
//窗口自适应
void CTestDlg::ChangeSize(UINT nID, int x, int y)
{
	CWnd *pWnd;
	pWnd = GetDlgItem(nID);
	if (pWnd != NULL)
	{
		CRect rect;
		pWnd->GetWindowRect(&rec);
		ScreenToClient(&rec);
		rect.left = rect.left*x / m_rect.Width();
		rect.top = rect.top*y / m_rect.Height();
		rect.bottom = rect.bottom*y / m_rect.Height();
		rect.right = rect.right*x / m_rect.Width();
		pWnd->MoveWindow(rec); //伸缩控件
	}
}

//窗口自适应
int count = 0;
void CTestDlg::OnSize(UINT nType, int cx, int cy)
{
	CDialog::OnSize(nType, cx, cy);

	// TODO:  在此处添加消
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

懒惰仓鼠君

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值