1、怎么使用AnimateWindow这个函数,怎么我的程序使用了这个函数就编译通不过了呢?
   我的头文件都包含了呀!
2、有没有避免使用AnimateWindow的方法而使窗口的显示/隐藏具有AnimateWindow函数 的效果呢?

解决方案 »

  1.   

    在你的stdafx.h中加入
    #ifndef WINVER
    #define WINVER 0x0500
    #endif#ifndef _WIN32_WINNT
    #define _WIN32_WINNT 0x0500
    #endif然后在mainframe的oncreate中加入AnimateWindow(GetSafeHwnd(),1000,AW_CENTER);
    就OK了
      

  2.   

    另一种解决方法:
    http://www.vckbase.com/document/viewdoc.asp?id=291
      

  3.   

    AnimateWindow函数的头文件Winuser.h
    在VC安装目录下进入include子目录,用EDIT打开Winuser.h文件,按F3键查找AnimateWindow,可以发现有两处定义,一处是定义该函数中使用到的参数;另一处是该函数原型的定义。在这两处定义中均出现了对Windows版本的条件判断,#if (WINVER >= 0X500)……,原来问题出在这里,我们目前所使用的各种Windows主版本号均为5点零以下,所以在VC中编译上述程序时,编译系统自然将AnimateWindow函数排除在外。因此为了在我们的程序中使用该函数,就得对其头文件进行一些小小的修改,即将#if (WINVER >= 0X500)改为#if (WINVER >= 0X400),请注意两处出现该函数定义的部分都要进行修改。经过上面的修改我想你就可以编译成功了吧。
    除了用AnimateWindow实现窗体动画外,我还不知道有什么其他简单的方法可以实现此效果。除非自己动手写了。