vc中为应用程序制作启动画面的简单方法

原创 2004年07月23日 22:03:00

Make a Splash Window for your application

                                                            By  kv300  040723

step 1. first, add the following two files SplashWindow.cpp and SplashWindow.h to your project

/* SplashWindow.cpp */

#include "StdAfx.h"
#include "resource.h"
#include "SplashWindow.h"
#include

BEGIN_MESSAGE_MAP(CSplashWindow, CWnd)
ON_WM_PAINT()
END_MESSAGE_MAP()

CSplashWindow::CSplashWindow()
{
 m_Bitmap.LoadBitmap(MAKEINTRESOURCE(IDB_SPLASHWINDOW)); //Load Bitmap, must add a bmp to your resource with name IDB_SPLASHWINDOW!!!
 m_Bitmap.GetBitmap(&bmBitmap);         //Get Bitmap Info
 
 /*Play SplashWindow.wav*/
 ::PlaySound("SplashWindow.wav", NULL, SND_ASYNC | SND_FILENAME); // if you need sound effect, add a valid wav file named SplashWindow.wav , and if not, comment this line
}

CSplashWindow::~CSplashWindow()
{
}

void CSplashWindow::Show()
{
 CSplashWindow *m_pSplashWindow = new CSplashWindow;
 m_pSplashWindow->CreateSplash();
 m_pSplashWindow->CenterWindow();
 m_pSplashWindow->ShowWindow(SW_SHOW);
 m_pSplashWindow->UpdateWindow();
 
 Sleep(3000); //Delay 3 Seconds, you can modify it as your idea
 m_pSplashWindow->DestroyWindow(); //Destroy Splash Window
 delete m_pSplashWindow;
}

void CSplashWindow::CreateSplash()
{
 //Create Splash Window
 CreateEx(0,
  AfxRegisterWndClass(
  0,
  AfxGetApp()->LoadStandardCursor(IDC_UPARROW)),
  "Welcome",
  WS_POPUP,
  0,
  0,
  bmBitmap.bmWidth,  //Bitmap Width = Splash Window Width
  bmBitmap.bmHeight, //Bitmap Height = Splash Window Height
  NULL,
  NULL,
  NULL);
  
}


void CSplashWindow::OnPaint()
{
 CPaintDC dc(this);
 MemDC.CreateCompatibleDC(NULL); //Create Memory DC
 Old_Bitmap = MemDC.SelectObject(&m_Bitmap); //Select DC
 dc.StretchBlt(0,
  0,
  bmBitmap.bmWidth,
  bmBitmap.bmHeight,  
  &MemDC,  
  0,
  0,
  bmBitmap.bmWidth,   
  bmBitmap.bmHeight,
  SRCCOPY);
 
 MemDC.SelectObject(Old_Bitmap); //Select Bitmap
}

/* SplashWindow.h */
#ifndef _SPLASH_WONDOW_
#define _SPLASH_WINDOW_

#pragma comment(lib, "winmm.lib") // needed for PlaySound() method

class CSplashWindow : public CWnd
{
private:
 CDC MemDC;
 BITMAP bmBitmap;
 CBitmap m_Bitmap;
 CBitmap* Old_Bitmap;
 CSplashWindow *m_pSplash;

 void CreateSplash();

public:
 CSplashWindow();
 ~CSplashWindow();
 
 static void Show();
 
 afx_msg void OnPaint();
 DECLARE_MESSAGE_MAP()
};

#endif //~_SPLASH_WINDOW_


step 2: Show splash screen in CWinApp::InitInstance()

#include "SplashWindow.h"

.....
// Parse command line for standard shell commands, DDE, file open
 CCommandLineInfo cmdInfo;
 ParseCommandLine(cmdInfo);
 
 CSplashWindow::Show(); //show your SplashWindow here
.....

step 3: bulid and run your application...

VC++编程中为程序加入启动画面功能

如何为自己的程序加入启动画面   观察我们平常使用的软件,当我们双击软件的时候,会在主界面出现前,先行出现一个启动画面,由于前一阵子写了一个基于对话框的程序,亲自实验了下,今天就为大家简单的介绍下,...
  • u014028070
  • u014028070
  • 2014-11-22 12:26:08
  • 1861

<em>VC</em>++ 漂亮的<em>启动界面</em> 渐隐渐现启动特效的 漂亮窗体共享源代码 ...

<em>VC</em>++ 漂亮的<em>启动界面</em> 渐隐渐现启动特效的 漂亮窗体共享源代码 <em>软件启动</em>载入效果发一个带渐隐渐现启动特效的<em>VC</em>++漂亮窗体,窗体中还有漂亮的按钮,包括图片按钮和两态...
  • 2018年04月13日 00:00

程序启动画面

载本文示例源代码在VC知识库上看到许多有关程序启动画面的程序而我觉得程序讲求的是"简而易懂",不需要太多的技巧,只要程序写的出来就好,于是我以另外一种简便的方式来设计程序启动画面同时在程序启动时播放音...
  • i_like_cpp
  • i_like_cpp
  • 2004-11-18 09:37:00
  • 1569

VC实现为对话框程序制作启动画面

  • 2010年01月24日 21:50
  • 344KB
  • 下载

启动画面类Splash

  • 2010年05月24日 16:23
  • 2KB
  • 下载

精美的<em>启动界面</em>--<em>VC</em>++

用<em>VC</em>++做的<em>启动界面</em>。很通用,只要自己做个界面,替换掉图片就可以了。... <em>VC</em>++ 漂亮的<em>启动界面</em> 渐隐渐现启动特效的 漂亮窗体共享源代码 <em>软件启动</em>载入效果 立即下载...
  • 2018年04月13日 00:00

VC/MFC如何添加启动界面

方法1:可以参照文库:http://wenku.baidu.com/view/2214f0030740be1e650e9a12.html 方法2:http://wenku.baidu.com/v...
  • yu__jia
  • yu__jia
  • 2016-09-22 12:50:33
  • 628

VS2013中使用MFC的时候添加启动画面

在学《VC++深入详解》这本书的时候,作者使用的是VC++6.0,然而我用的VS2013,很多地方都有了变化。 在9.8启动画面中,有很大的不同。百度之后,参考了网上一写代码(参考1,参考2),整理...
  • cjbct
  • cjbct
  • 2017-01-12 11:56:14
  • 1763

用VC制作应用程序启动画面

摘 要:本文提供了四种启动画面制作方法。 使用启动画面一是可以减少等待程序加载过程中的枯燥感(尤其是一些大型程序);二是 可以用来显示软件名称和版权等提示信息。怎样使用VC++制作应用程序的启动画面呢...
  • Tunix126
  • Tunix126
  • 2006-10-15 13:09:00
  • 815

VC打开另一个应用程序

要在应用程序中启动其他的应用程序,有3个函数可以使用,下面我一一说说他们(我以打开D:\Program Files\zeecalls\目录下的zeecalls.exe应用程序为例): 1、Winex...
  • wangkechuang
  • wangkechuang
  • 2012-06-14 23:56:48
  • 5953
收藏助手
不良信息举报
您举报文章:vc中为应用程序制作启动画面的简单方法
举报原因:
原因补充:

(最多只允许输入30个字)