熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> .NET編程 >> 正文

vc.net中實現啟動畫面淡入淡出

2022-06-13   來源: .NET編程 

  找了半天沒找實現啟動畫面來個淡入淡出的代碼只好自己寫了個呵呵還不錯拿給大家看看

  #undef WINVER //取消原有版本定義重新定義版本

  #define WINVER x //為了使AnimateWindow函數可用

  #include <afxwinh>

  然後在相關文件分別加入OnCreateOnCloseOnEraseBkgnd和OnTimer消息函數記得在相關構析函數內加入

  SetTimer( NULL); //設定定時器定時

  OnCreate消息函數裡添加淡入窗口或者背景位圖代碼:

  BOOL CSplashWnd::OnCreate(LPCREATESTRUCT lpcs)

  {

  CenterWindow(); //窗口位於屏幕中心

  AnimateWindow(GetSafeHwnd() AW_BLEND); //淡入圖片

  return true;

  }

  OnClose消息函數是添加淡出窗口或背景位圖代碼

  void CSplashWnd::OnClose()

  {

  AnimateWindow(GetSafeHwnd() AW_BLEND | AW_HIDE); //淡出圖片

  CWnd::OnClose();

  }

  OnEraseBkgnd消息函數是添加背景 位圖

  BOOL CSplashWnd::OnEraseBkgnd(CDC *pDC)

  {

  DDB mSplashBitmap;

  mSplashBitmapDisplayDDB(pDC IDB_SPLASH); //顯示位圖資源IDB_SPLASH

  return true;

  }

  OnTimer消息函數是添加定時關閉代碼

  void CSplashWnd::OnTimer(UINT nIDEvent)

  {

  KillTimer(); //關閉定時器

  PostMessage(WM_CLOSE ); //發送關閉窗口信息

  }

  是不是很簡單我看有些關於位圖和窗口的淡入淡出很復雜我剛學VC不久看不懂只好想出這簡便的辦法有什麼建議和意見歡迎大家指出!


From:http://tw.wingwit.com/Article/program/net/201311/12451.html
    推薦文章
    Copyright © 2005-2022 電腦知識網 Computer Knowledge   All rights reserved.