VS2010 MFC软件启动界面加载引导图片(类似VS2010启动或者PS启动画面)(附源码)

废话不多说,先看效果,看看是不是各位想要的的结果!
源码连接:工程源码链接(免积分)
各位可以下载下来
启动页面的图片,图片可以根据自己需求去做,当然这里看你的积累了,如果你会PS的话可能会更好一些!
界面启动结束就进入了我们的的对话框程序,当然,如果你是SDI或者MDI的话,就近这两个,我这里用的是DIALOG,还是接上期的窗口
VS2010 MFC软件启动界面加载引导图片(类似VS2010启动或者PS启动画面)(附源码)_第1张图片
废话不多说,看图片跟我新建一个类。
VS2010 MFC软件启动界面加载引导图片(类似VS2010启动或者PS启动画面)(附源码)_第2张图片VS2010 MFC软件启动界面加载引导图片(类似VS2010启动或者PS启动画面)(附源码)_第3张图片VS2010 MFC软件启动界面加载引导图片(类似VS2010启动或者PS启动画面)(附源码)_第4张图片
VS2010 MFC软件启动界面加载引导图片(类似VS2010启动或者PS启动画面)(附源码)_第5张图片
VS2010 MFC软件启动界面加载引导图片(类似VS2010启动或者PS启动画面)(附源码)_第6张图片
头文件:
//后续我在类前加了C 即 WsdSplash-> CWsdSplash

#pragma once
// WsdSplash
class CWsdSplash : public CWnd
{
DECLARE_DYNAMIC(CWsdSplash)
public:
CWsdSplash();
virtual ~CWsdSplash();
protected:
DECLARE_MESSAGE_MAP()


//实现代码
public:
CBitmap m_bitmap;
afx_msg void OnTimer(UINT_PTR nIDEvent);
afx_msg void OnPaint();
void Create(UINT nBitmapID);
};

#include "stdafx.h"
#include "DialogToolsNotes.h"
#include "WsdSplash.h"
// WsdSplash
IMPLEMENT_DYNAMIC(CWsdSplash, CWnd)
CWsdSplash::CWsdSplash()
{
}
CWsdSplash::~CWsdSplash()
{
}
BEGIN_MESSAGE_MAP(CWsdSplash, CWnd)
		ON_WM_TIMER()
		ON_WM_PAINT()
END_MESSAGE_MAP()

// WsdSplash message handlers
void CWsdSplash::OnTimer(UINT_PTR nIDEvent)
{
// TODO: 添加实现代码
   DestroyWindow();//销毁窗口
   CWnd::OnTimer(nIDEvent);
}

void CWsdSplash::OnPaint()
{
CPaintDC dc(this); // device context for painting
// TODO: 下面添加重绘代码,上面是模板生成固定格式
BITMAP bitmap;
m_bitmap.GetBitmap(&bitmap);
CDC dcComp;
dcComp.CreateCompatibleDC(&dc);
dcComp.SelectObject(&m_bitmap);
//Draw bitmap
			  dc.BitBlt(0,
						0,
						bitmap.bmWidth,
						bitmap.bmHeight,
						&dcComp,
						0,
						0,
						SRCCOPY);
// Do not call CWnd::OnPaint() for painting messages
}

void CWsdSplash::Create(UINT nBitmapID)
{
m_bitmap.LoadBitmapW(nBitmapID);
BITMAP bitmap;
m_bitmap.GetBitmap(&bitmap);
CreateEx(0,
AfxRegisterWndClass(0,
                    AfxGetApp()->LoadStandardCursor(IDC_ARROW)),
           			NULL,
					WS_POPUP|WS_VISIBLE,
					0,
					0,
					bitmap.bmWidth,
					bitmap.bmHeight,
					NULL,
					NULL);
}

类已经建好了,那么剩下的我们要在主函数中加入该头文件

#include "WsdSplash.h" //启动窗口头文件


//InitInstance()中加入下面这一段函数
BOOL CDialogToolsNotesApp::InitInstance()
{
   CWsdSplash wndSplash;
   wndSplash.Create(IDB_BEGINLOGO); //选择自己喜欢的位图
   wndSplash.CenterWindow();
   wndSplash.UpdateWindow();//send WM_PAINT
   Sleep(5000);
   wndSplash.DestroyWindow();//销毁初始画面窗口
}

你可能感兴趣的:(MFC,启动页面,启动画面)