MFC 解决AnimateWindow使用出现的问题:undeclared identifier

在使用 AnimateWindow  函数实现动画窗口时 出现的问题

error C2065: 'AnimateWindow' : undeclared identifier
error C2065: 'AW_HIDE' : undeclared identifier
error C2065: 'AW_BLEND' : undeclared identifier

原因:

原因何在?问题出在定义AnimateWindow函数的头文件Winuser.h中,在VC安装目录下进入include子目录,用EDIT打开 Winuser.h文件,按F3键查找AnimateWindow,可以发现有两处定义,一处是定义该函数中使用到的参数;另一处是该函数原型的定义。在 这两处定义中均出现了对Windows版本的条件判断:


见头文件中的原型:

#if(WINVER >= 0x0500)
/**//*
 * AnimateWindow() Commands
 */

#if(WINVER >= 0x0500)
WINUSERAPI
BOOL
WINAPI
AnimateWindow(
    HWND hWnd,
    DWORD dwTime,
    DWORD dwFlags);
#endif /* WINVER >= 0x0500 */


1、在StdAfx.h靠前的地方重新定义

      加上#undef  WINVER 

            #define  WINVER   0x500


#undef WINVER 
#define WINVER 0X500 

#if _MSC_VER > 1000
#pragma once
#endif // _MSC_VER > 1000




 

2、修改Winuser.h中的#if(WINVER >= 0x0500),改为#if(WINVER >= 0x0400)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值