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;
}