五分钟就能轻松溅起

Sample Image - EasySplash.jpg 介绍 你曾经想要一个快速和简单的方法来添加MFC程序的启动画面吗? 我将向您展示如何添加一个启动程序在不到五分钟。所有你需要的是一个位图图片你想使用你的飞溅。 本文是设计用于Visual Studio 2005中,但可能在更早的版本。 打开您的项目资源视图。展开树中,右键单击rc文件并选择添加资源。从弹出选择位图和按导入按钮。 Image 2 浏览到您想要使用BMP的位置作为飞溅并单击open。扩大位图叶在资源视图和改变IDB_SPLASH的id。 Image 3 现在右键单击对话框叶和选择“插入对话框”。扩大对话框叶,如果新对话框不是已经打开在资源编辑器中,双击新的IDD_DIALOG1打开对话框。删除可以取消按钮。更改以下属性对话框: ID IDD_SPLASHBorder thinTitle酒吧falseTopmost trueCenter为true Image 4 看到蓝色的细线了吗?用鼠标拖动,直到即使双方的对话框。从工具箱中,拖动控制对话框,把它放在左上角。 Image 6 根据图片你想要的大小,调整对话框是大于你想用照片。您可能需要调整薄蓝线。选择控制。改变图片控件ID IDC_SPLASH和位图的类型。你会发现现在的类型是位图图像属性不再是灰色的。IDB_SPLASH变化的图像属性下拉。 Image 7 调整对话框,这样画面就适合了。 Image 9 右键单击对话框中,选择“添加类”。将类名设置为CDialogSplash,点击finish。 Image 10 在类视图中,选择CDialogSplash并按下“消息”按钮在properties区域和WM_TIMER向下滚动。使用下拉一个定时函数添加到CDialogSplash类。定时函数中的代码替换CDialog::位置(); Image 11 在类视图中,选择CDialogSplash并按下“覆盖”按钮和OnInitDialog向下滚动。使用下拉列表添加一个OnInitDialog函数。更新的代码如下: 隐藏,复制Code

BOOL CDialogSplash::OnInitDialog()
{
    CDialog::OnInitDialog();
    CRect rectPic, rectWin;
    GetWindowRect(&rectWin);
    m_pic.GetWindowRect(&rectPic);
    MoveWindow(rectWin.left, rectWin.top,rectPic.Width(),rectPic.Height());

    return TRUE; 
}

现在让我们使用我们创建的飞溅。 因为大多数人会喜欢他们飞溅之前显示主程序完成装载时,我们会将调用InitInstance的顶部附近的函数在应用程序类。 在类视图中,单击应用程序类。对于这个示例,我们将使用我创建的演示项目并选择CEasySplashApp。 CEasySplashApp点击右键,选择添加变量。改变访问受保护,m_splash CDialogSplash类型和名称。 Image 12 在类视图中双击CEasySplashApp InitInstance函数的类,并添加以下代码的函数后CWinApp:: InitInstance (); 隐藏,复制Code

m_splash.Create(IDD_SPLASH, this->m_pMainWnd); 
m_splash.ShowWindow(SW_SHOW);
m_splash.SetTimer(1,2000, NULL);

你现在应该是这样的: Image 13 编译您的项目并运行它。你应该看看你的启动程序启动时显示计时器到期后并关闭。 在演示项目中,我又添加了一个按钮来显示飞溅所以你不必重启程序再次看看飞溅。 我希望这篇文章能够对您有所帮助。 历史 2006年8月26日:最初的帖子 本文转载于:http://www.diyabc.com/frontweb/news8181.html

原文地址:https://www.cnblogs.com/Dincat/p/13467601.html