www.gusucode.com > 一个VC++软件启动动态闪屏特效代码-源码程序 > 一个VC++软件启动动态闪屏特效代码-源码程序/code/YuSplash.cpp
// YuSplash.cpp : Defines the class behaviors for the application. // download by http://www.NewXing.com #include "stdafx.h" #include "YuSplash.h" #include "YuSplashDlg.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CYuSplashApp BEGIN_MESSAGE_MAP(CYuSplashApp, CWinApp) //{{AFX_MSG_MAP(CYuSplashApp) // NOTE - the ClassWizard will add and remove mapping macros here. // DO NOT EDIT what you see in these blocks of generated code! //}}AFX_MSG ON_COMMAND(ID_HELP, CWinApp::OnHelp) END_MESSAGE_MAP() ///////////////////////////////////////////////////////////////////////////// // CYuSplashApp construction CYuSplashApp::CYuSplashApp() { // TODO: add construction code here, // Place all significant initialization in InitInstance } ///////////////////////////////////////////////////////////////////////////// // The one and only CYuSplashApp object CYuSplashApp theApp; ///////////////////////////////////////////////////////////////////////////// // CYuSplashApp initialization BOOL CYuSplashApp::InitInstance() { AfxEnableControlContainer(); // Standard initialization // If you are not using these features and wish to reduce the size // of your final executable, you should remove from the following // the specific initialization routines you do not need. #ifdef _AFXDLL Enable3dControls(); // Call this when using MFC in a shared DLL #else Enable3dControlsStatic(); // Call this when linking to MFC statically #endif //////////////////在这里 CYuWnd *pWnd = new CYuWnd; //建立一个新窗口对象 pWnd->CreatYuWnd (); //创建窗口 pWnd->SetXStep ( 0 ); //X方向的步长 pWnd->SetYStep ( 2 ); //Y方向的步长 pWnd->SetBlockNum ( 600 ); //将图片在X,Y方向均分为多少份 pWnd->SetDirection ( TRUE ); //表示第一个点从左上角开始,TRUE:左上,FLASE:右下 pWnd->SetDelay ( 5 ); //绘制完一组点(m_nBlockNum个)后的延时 pWnd->CenterWindow (); //在屏幕中央 pWnd->ShowWindow (SW_SHOW); //显示窗口 pWnd->UpdateWindow (); //更新窗口,激活OnPait函数 Sleep(500); //等待函数指定秒钟 if (pWnd != NULL) { pWnd->SendMessage (WM_CLOSE); //关闭窗口 delete pWnd; pWnd = NULL; } ///////////////////end CYuSplashDlg dlg; m_pMainWnd = &dlg; int nResponse = dlg.DoModal(); if (nResponse == IDOK) { // TODO: Place code here to handle when the dialog is // dismissed with OK } else if (nResponse == IDCANCEL) { // TODO: Place code here to handle when the dialog is // dismissed with Cancel } // Since the dialog has been closed, return FALSE so that we exit the // application, rather than start the application's message pump. return FALSE; }