Demon521

Troubleshooting. Good luck to me 2009! 人生中没有Ctrl+Z!
  博客园  :: 首页  :: 联系 :: 订阅 订阅  :: 管理

不规则窗体

Posted on 2008-04-07 14:35  Demon521  阅读(206)  评论(0编辑  收藏  举报

CBitmapDialog类的使用

下面介绍CBitmapDialog类的使用过程:
1. 运行VC,建立基于对话框的应用程序 BitmapDlg。设置对话框的属性,去掉边框和标题栏。
2. 插入位图。(在插入->资源->选 Bitmap)
3. 在CBitmapDialogDlg 的BOOL CBmpDlgDlg::OnInitDialog() 中添加如下代码:

LoadBitmap(IDB_BITMAP1);//加载位图
SetTransparent (TRUE);
SetTransColor (RGB(0,0,0));//去掉形状的颜色设置
SetStaticTransparent (TRUE);
SetClickAnywhereMove (TRUE);//鼠标是否能拖动窗体。

4. 将 CBitmapDialogDlg 的基类改为 CBitmapDialog,并将更改相应的消息映射。

请大家都来试一试吧!

BOOL CTestDlg::OnInitDialog()
{
 CDialog::OnInitDialog();
 ...
 CRgn rgn;
 rgn. CreateEllipticRgn(0,0,200,100);
 SetWindowRgn(rgn,TRUE);
/*CRect rcDialog;
  GetClientRect (rcDialog );
  
  // Create region and assign to window .
  m_rgn.CreateEllipticRgn (0 , 0 , rcDialog.Width() , rcDialog.Height ());
  SetWindowRgn (/*GetSafeHwnd(),*/(HRGN)m_rgn,TRUE);
  */
}