VC++编程中为程序加入启动画面功能
如何为自己的程序加入启动画面
观察我们平常使用的软件,当我们双击软件的时候,会在主界面出现前,先行出现一个启动画面,由于前一阵子写了一个基于对话框的程序,亲自实验了下,今天就为大家简单的介绍下,在我们的程序中如何实现增加启动画面的功能。
在这里说明说明一下,我们平常使用的编译器是VS2010 或者是VS2012,在早一点的版本中,例如vc6.0中,加入启动画面这一功能,编译器已经为我们封装好,我们直接使用他所提供的CSplashWnd类就行了。单击【Project\Add to Project\Components and controls\Splashscreen】,会自动插入启动画面窗口,然后把其中的默认ID(ID_SPLASH)换成我们插入的位图资源ID就行(在资源管理器中右键插入->位图->导入),然后在CSplashWnd类中OnCreate()函数中设置显示的时间(定时器)setTimer(1,777,NULL),然后在timer的响应函数中加入HideSplashScreen();语句(当时间到了,隐藏画面),此时我们最后在们的主程序中的Oncreate()(例如基于对话框的程序要在C..Dlg中,基于单文档的要CMainFram中)加入CSplashWnd::ShowSplashScreen(this),用来启动该画面(记得加头文件)。以前版本的编译器就是按照以上方法。
我主要来介绍下VS2010 以上的编译器该如何做,此时编译器已经将之前的组件功能取消,但我们可以借鉴之前的CSplashWnd类中的功能,我们自己建立一个类来支持。以我的程序为例子,利用“类向导”增加一个新类,取名为“CSplash”如图,然后我们仿照CSplashWnd类做如下增加
(1)为该类增加一个位图变量
(2)在头文件中为该类增加三个公有消息,由于是我们自己建立的类,所以我们手动增加,Create(),OnPaint(),Ontimer(),后两个为消息响应函数,和我们平常用的一样。如图
(3)在源文件中增加这几个函数的定义。
手动添加响应函数
(4)我的程序是基于对话框的,所以最后一步,在类C…Dlg中加入Oncreate()响应函数函数,再次函数中,进行编写如下代码:其中ID是你的插入的位图图片ID。
此时,我们就完成了简单的添加启动画面的功能。
VC++编程中为程序加入启动画面功能的更多相关文章
- 【VC编程技巧】窗口☞3.5对单文档或者多文档程序制作启动画面
(一)概要: 文章描写叙述了如何通过Visual C++ 2012或者Visual C++ .NET,为单文档或者多文档程序制作启动画面.在Microsoft Visual Studio 6.0中对于 ...
- IOS编程教程(八):在你的应用程序添加启动画面
IOS编程教程(八):在你的应用程序添加启动画面 虽然你可能认为你需要编写闪屏的代码,苹果已经可以非常轻松地把它做在Xcode中.不需要任何编码.你只需要做的是设置一些配置. 什么是闪屏 对于那些 ...
- WPF应用程序的启动画面[Splash Screen本质分析]
原文:WPF应用程序的启动画面[Splash Screen本质分析] 不经意间发现了wpf的这个小玩意,感觉蛮有意思的.我在项目中添加了一张图片 如图: wpf-1.JPG(10.73 K) 2010 ...
- VC++编程中常用的字符串转换函数
VC++编程中经常遇到不同编码编码的字符串之间需要转换的情况,以下简单提供几个不同编码字符串之间的转换函数: ANSI 字符串和Unicode字符串之间的转换 //Convert wide char ...
- C# WinForm程序添加启动画面
如果程序在装载时需要进行较长时间的处理,最好使用启动画面,一方面美化程序,一方面可以不使用户面对着一片空白的程序界面. 我手头上一个小项目主界面启动时需要检查用户文件及运行环境是否有效,需要一段时间处 ...
- apple-touch-startup-image 制作iphone web应用程序的启动画面
为ipad制作web应用程序的启动画面时发现个问题,只能显示竖屏图,横屏图出不来,如下: 首先页面头部里要加入(这个是APP启动画面图片,如果不设置,启动画面就是白屏,图片像素就是手机全屏的像素) & ...
- vc++编程之在程序中加入网址链接
在vc++对话框编程中,我们处于某种需要(介绍自己的软件或者自己的博客)可以在对话框上增加一个网址链接,用户只要一点击,就进入了相应的网页,我在此演示下如何完成. 1 打开编译器,我们新建一个基于对话 ...
- 用C#给程序加启动画面并只允许一个应用程序实例运行
. 启动画面类: public class SplashForm : System.Windows.Forms.Form { private System.Windows.Forms.PictureB ...
- C#winfrom中应用程序只启动一次代码
static class Program { private const int WS_SHOWNORMAL = 1; [DllImport("User32 ...
随机推荐
- 理解python先编译后解释的特点
1. CPython默认的标准解释器编译器.JPython支持Java集成,可以生成Java字节码并在JVM中解释执行.IronPython支持.NET集成. 2. 下次运行程序时,python自动检 ...
- 让内层Div将外层Div撑开
在CSS排版中,如果一个层中的层使用了float浮动的话,那么就有可能会出现外层没有被内层撑开的情况,如以下代码所示: <div style="width:300px; "& ...
- 原创: EasyUI Tree 最后一级 节点 横向排列
原创: EasyUI Tree 最后一级 节点 横向排列 转载请指明出处 必须要写在: onLoadSuccess 事件中 ddAuthTree.tree({ lines: true, checkb ...
- typedef 及其与struct的结合使用
//相当于为现有类型创建一个别名,或称类型别名. //整形等 typedef int size; //字符数组 ]; ];//=> typedef ]; Line text, secondlin ...
- 完成了server和client的框架设计
界面暂且也不搞.先把框架搭建起来.
- Mysql 复制工具(percona-toolkit)
Mysql 复制工具 1.percona-toolkit简介 percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括: 检 ...
- LINUX下网站压力测试工具webbench
wget http://blog.s135.com/soft/linux/webbench/webbench-1.5.tar.gz tar zxvf webbench-1.5.tar.gz cd we ...
- 怎么利用CSS3绘制三角形
最近三角形挺火,很多地方都能碰到,如网页,微信,或者QQ空间的时间轴等地方都能看到,而且这些并不是图片插入进去的,那就需要用CSS来做了 <p class="bbb"> ...
- UltraEdit20 注册
UltraEdit v20下载与注册机 UltraEdit是一套功能强大的文本编辑器,可以编辑文本.十六进制.ASCII 码.HTML.PHP.Perl.Java 和 JavaScript等众多流行计 ...
- Python之定向爬虫Scrapy
1.Scrapy介绍 Scrapy,Python开发的一个快速,高层次的屏幕抓取和web抓取框架,用于抓取web站点并从页面中提取结构化的数据.Scrapy用途广泛,可以用于数据挖掘.监测和自动化测试 ...