启动windows桌面程序之前在等待主程序运行起来之前一般会设计一个等待的动画,如果主程序起来了这个过场动画就会消失
wfp提供这个小巧而又比较有用的功能splashscreen类
一般来说有两种实现方式
1.借助vs2008工具可以实现
第一步选择一个合适的图片bmp,jpg,gif都可以。添加到你的vs项目中。
第二步右键这个图片文件选择“属性”,
第三步 点击属性中的“生成操作”下拉框选择“splashscreen”就可以了
这样就实现了这个过程动画的功能
2.第二种方式是编程方式
第一步仍然是选择一个图片添加到项目中,直接添加到项目下就行,当作普通文件。(不是必须添加到资源中)
第二步就是实例化这个对象
SplashScreen ss = new SplashScreen("DSC_0036.JPG");//参数就是图片的名字,注意路径就行
ss.show(true)//只有调用show方法这个过程动画才会显示,有个bool类型输入参数,填true的话,
这个过场动画会在主程序显示出来的时候就自己关闭,如果是false类型的话,这个动画是不关闭,
只有显式的调用close方法
ss.Close(new TimeSpan(0,0,10));//这里有参数timespan是指名多长时间以后ss关闭
namespace WpfApplication1
{
/// <summary>
/// App.xaml 的交互逻辑
/// </summary>
public partial class App : Application
{
protected override void OnStartup(StartupEventArgs e)
{
SplashScreen s = new SplashScreen("20080320132823923.gif");
s.Show(true);
base.OnStartup(e);
}
}
}
值得一提的是,目前看来,也没有办法加载一个窗口作为SplashScreen。
如果希望闪屏至少显示多少时间,则可以考虑下面的代码
SplashScreen s = new SplashScreen("20080320132823923.gif"); s.Show(false); s.Close(new TimeSpan(0, 0, 10));