利用這個就可以來製作類似msn、qq 的訊息提示視窗.
void caboutdlg::onok()
函式詳解:
bool animatewindow (
hwnd hwnd,
dword dwtime,
dword dwflags
); hwnd:指定產生動畫視窗的控制代碼;
dwtime:指明動畫持續的時間(以微秒計),完成乙個動畫的標準時間為200微秒;
dwfags:指定動畫型別。這個引數可以是乙個或多個標誌的組合。
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、視窗已經隱藏仍要隱藏視窗。
函式將失敗。
可能會產生如下錯誤(由於windows版本問題):
error c2065: 'animatewindow' : undeclared identifier
error c2065: 'aw_hide' : undeclared identifier
error c2065: 'aw_blend' : undeclared identifier
原因何在?問題出在定義animatewindow函式的標頭檔案winuser.h中,在vc安裝目錄下進入include子目錄,用edit開啟 winuser.**件,按f3鍵查詢animatewindow,可以發現有兩處定義,一處是定義該函式中使用到的引數;另一處是該函式原型的定義。在 這兩處定義中均出現了對windows版本的條件判斷:
#if(winver >= 0x0500) /*
* animatewindow() commands */
#if(winver >= 0x0500)
winuserapi
bool
winapi
animatewindow(
hwnd hwnd,
dword dwtime,
dword dwflags);
#endif /* winver >= 0x0500 */
原來問題出在這裡,我們目前所使用的各種windows主版本號均為5點零以下,所以在vc中編譯上述程式時,編譯系統自然將animatewindow 函式排除在外。因此為了在我們的程式中使用該函式,就得對其標頭檔案進行一些小小的修改,即將#if (winver >= 0x500)改為#if (winver >= 0x400),請注意兩處出現該函式定義的部分都要進行修改。
假如你不想修改winuser.h,可以在工程裡的stdafx.**件靠前位置加上如下定義:
#undef winver
#define winver 0x500
用AnimateWindow函式實現視窗動畫效果
用animatewindow函式實現視窗動畫效果 bool animatewindow hwnd hwnd,dword dwtime,dword dwflags hwnd 指定產生動畫視窗的控制代碼 dwtime 指明動畫持續的時間 以微秒計 完成乙個動畫的標準時間為200微秒 dwfags 指定動...
AnimateWindow 視窗漸入漸出
封裝在user32.dll中,函式原型為 bool animatewindow hwndhwnd,指定產生動畫視窗的控制代碼 dworddwtime,指明動畫持續的時間 以微秒計 完成乙個動畫的標準時間為200微秒 dworddwflags 指定動畫型別。這個引數可以是乙個或多個標誌的組合。dwfl...
AnimateWindow 百度百科
animatewindow 開放分類 程式設計 計算機 api 函式功能 該函式能在顯示與隱藏視窗時能產生特殊的效果。有兩種型別的動畫效果 滾動動畫和滑動動畫。函式原型 bool animatewindow hwnd hwnd,dword dwtime,dword dwflags 引數 hwnd 指...