VC创建圆角窗体2

为了实现圆角的对话框窗口,这里主要用两个函数,

CreateRoundRectRgn,和SetWindowRgn

程序先通过GetWindowRgn函数得到窗口矩形,然后通过CreateRoundRectRgn函数创建一个圆角矩形,最后通过SetWindowRgn函数改变窗口的形状。


具体操作如下:

打开“class view”,右击“CMyDlg”,出现一个菜单,选择“AddWindow Message Handler..”

之后在“New Windows Messages\events”中双击“OnSize”,“OK”

编辑函数如下:

void CMyDlg::OnSize(UINT nType, int cx, int cy)
{
	CDialog::OnSize(nType, cx, cy);
	
	// TODO: Add your message handler code here
	CRgn m_rgn;
	CRect rc;
	GetWindowRect(&rc);
	rc-=rc.TopLeft();
	m_rgn.CreateRoundRectRgn(rc.left,rc.top,rc.right,rc.bottom,100,100);
	SetWindowRgn(m_rgn,TRUE);
}

其他窗口的操作基本上相同,都按照这个操作

运行结果如下:

vc <wbr> <wbr>对话框 <wbr>圆角窗口
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值