VC 窗口特效(淡入淡出、滑动显示等)

http://blog.csdn.net/qiaozhangchi/archive/2008/12/11/3497367.aspx

 

void CAboutDlg::OnClose()
{
    AnimateWindow(GetSafeHwnd(), 500, AW_BLEND | AW_HIDE);    //淡出0.5秒
    CDialog::OnClose();
}
int CAboutDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    if (CDialog::OnCreate(lpCreateStruct) == -1)
        return -1;
    CenterWindow();                    //居中
    ::AnimateWindow(GetSafeHwnd(), 500, AW_BLEND);    //淡入0.5秒
    return 0;
}
dwFlags:
  AW_SLIDE:使用滑动类型。缺省为滚动类型。使用AW_CENTER标志时被忽略;
  AW_ACTIVATE:激活窗口。在使用了AW_HIDE标志后不能使用这个标志;
  AW_BLEND:实现淡出效果。只有当hWnd为顶层窗口的时候才可以使用此标志;
  AW_HIDE:隐藏窗口,缺省则显示窗口;
  AW_CENTER:若使用了AW_HIDE标志,则使窗口向内重叠,即收缩窗口;若未使用AW_HIDE标志,则使窗口向外扩展,即展开窗口;
  AW_HOR_POSITIVE:自左向右显示窗口。该标志可以在滚动动画和滑动动画中使用。当使用AW_CENTER标志时,该标志将被忽略;
  AW_VER_POSITIVE:自顶向下显示窗口。该标志可以在滚动动画和滑动动画中使用。当使用AW_CENTER标志时,该标志将被忽略;
  AW_VER_NEGATIVE:自下向上显示窗口。该标志可以在滚动动画和滑动动画中使用。当使用AW_CENTER标志时,该标志将被忽略;
返回值:如果函数成功,返回值为非零;如果函数失败,返回值为零。


注意

如果:    1、窗口使用了窗口边界;
             2、窗口已经可见仍要显示窗口;

             3、窗口已经隐藏仍要隐藏窗口。    函数将调用失败。


编译前在STDAFX.H中加入
   #undef   WINVER   
   #define   WINVER   0X5000

你可能感兴趣的:(VC 窗口特效(淡入淡出、滑动显示等))