VC个性化窗口界面设计

本文介绍了一种在VC环境下创建个性化无边框窗口的方法,通过修改对话框模板,设置窗口区域,映射消息处理函数,实现圆角矩形界面,并能自定义背景颜色和控件颜色。通过OnNcHitTest处理鼠标拖动,实现窗口可移动。
摘要由CSDN通过智能技术生成

本文最新链接地址:http://lifepeak.net/it-jishu/vc-gexing-jiemian.html

VC下有时需要制作个性化的窗口界面,用界面库又比较繁琐,而且有些界面库还必须收费才能使用,这里我提供一个简单且有效的制作个性化界面的方法。

 

  AppWizard向导生成一个基于对话框的应用程序框架,把对话框模板的Border属性改为none,也就是没有边框和标题栏。从CDialog派生一个类,命名为CCustomDlg。首先我们要建立不规则窗口的界面,要用到以下函数,

int SetWindowRgn( HRGN hRgn, BOOL bRedraw );

这个函数用来设置应用程序窗口的窗口区域,在本文的例子中我们使用CreateRoundRectRgn创建一个圆角矩形区域,然后再调用SetWindowRgn设置窗口区域。CreateRoundRectRgn的原型如下:

BOOL CreateRoundRectRgn( int x1, int y1, int x2, int y2, int x3, int y3 );

具体代码如下:

BOOL CCustomDlgDlg::OnInitDialog()

{

       CDialog::OnInitDialog();

       ......

      

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值