注册 登录
编程论坛 VC++/MFC

美化自己的对话框--运用Splash控件显示初始化界面

hlmzrdongdong 发布于 2009-11-30 21:33, 1867 次点击
    当你打开VS2008或者VC6.0时会出现一个欢迎界面,显示一些该软件的信息和一些动态的初始化信息,然后才是软件的主界面。本帖就是讨论怎样做到这一点。

    该帖用到的例程下载如下。声明是在VS2008环境下调试成功的。
只有本站会员才能查看附件,请 登录


在该例程中Splash控件的类为SplashScreenEx.h和SplashScreenEx.cpp。

具体步骤如下:
1.建立一个对话框的MFC工程。

2.添加你要作为欢迎界面的BMP格式的图片到你的工程。

3.在我的例程里拷贝SplashScreenEx.h和SplashScreenEx.cpp到你的工程目录下并添加到你的工程中。

4.在你的对话框类(.h)和实现文件(.cpp)里添加包含语句:
#include "SplashScreenEx.h"

5.在对话框初始化函数InitDialog()里添加代码如下:
程序代码:
    CSplashScreenEx *pSplash=new CSplashScreenEx();
    pSplash->Create(this,_T("Splash控件示例程序"),0,CSS_FADE | CSS_CENTERSCREEN | CSS_SHADOW);
    pSplash->SetBitmap(IDB_SPLASHBMP,255,0,255);//IDB_SPLASHBMP是添加的BMP的ID号,后面的三个数设置透明色
    pSplash->SetTextFont(_T("黑体"),100,CSS_TEXT_NORMAL);//动态字母的字体、大小
    pSplash->SetTextRect(CRect(27,198,291,218));//用于现实动态字幕的矩形区
    pSplash->SetTextFormat(DT_SINGLELINE | DT_LEFT | DT_VCENTER);//设置动态字幕的属性:单行\靠左边
    pSplash->Show();//开始显示

    Sleep(1000);//定时1000ms
    pSplash->SetTextColor(RGB(255,0,0));//换字幕颜色
    pSplash->SetText(_T("1秒后......"));//换字幕
   
    Sleep(1000);
    pSplash->SetTextColor(RGB(0,255,0));
    pSplash->SetText(_T("2秒后......"));
   
    Sleep(1000);
    pSplash->SetTextColor(RGB(0,0,255));
    pSplash->SetText(_T("3秒后......"));
        
    Sleep(1000);
    pSplash->SetTextColor(RGB(100,100,100));
    pSplash->SetText(_T("进入主界面......"));
    Sleep(1500);

    pSplash->Hide();//消失,并显示主界面

运行界面
1.开始运行:
只有本站会员才能查看附件,请 登录


2.1秒钟后:
只有本站会员才能查看附件,请 登录


3.3秒钟后:
只有本站会员才能查看附件,请 登录


4.最后显示主界面:
只有本站会员才能查看附件,请 登录




[ 本帖最后由 hlmzrdongdong 于 2009-11-30 21:50 编辑 ]
3 回复
#2
lgw18602010-04-22 17:54
真的大牛!
#3
gougou_1192010-05-20 09:44
不错 收了~谢谢
#4
lovezp13142011-03-24 22:37
拿走了,哈哈
1