本文最新链接地址: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();
......