本文实例展示了DevExpress中SplashScreen的用法,对于C#初学者来说有一定的参考借鉴价值,具体用法如下:
关键代码部分如下:
using DevExpress.XtraSplashScreen;
using System;
namespace DevExpressUtilHelpV3
{
/// <summary>
/// 基于.NET 3.0的 SplashScreen工具类
/// </summary>
public static class SplashScreenToolV3
{
private const bool FadeIn = false;
private const bool FadeOut = true;
private const bool ThrowExceptionIfIsAlreadyShown = false;
private const bool ThrowExceptionIfIsAlreadyClosed = false;
/// <summary>
/// ShowSplashScreen
/// </summary>
/// <param name="type">WaitForm</param>
public static void ShowSplashScreen(Type type)
{
CloseSplashScreen();
SplashScreenManager.ShowForm(null, type, FadeIn, FadeOut, ThrowExceptionIfIsAlreadyShown);
}
/// <summary>
/// CloseSplashScreen
/// </summary>
public static void CloseSplashScreen()
{
if (SplashScreenManager.Default != null)
{
//Thread _task = new Thread(() =>
//{
SplashScreenManager.CloseForm(ThrowExceptionIfIsAlreadyClosed);
//});
//_task.Start();
}
}
/// <summary>
/// SetCaption
/// </summary>
/// <param name="caption">需要设置的Title</param>
public static void SetCaption(string caption)
{
if (SplashScreenManager.Default != null && !string.IsNullOrEmpty(caption))
{
SplashScreenManager.Default.SetWaitFormCaption(caption);
}
}
/// <summary>
/// SetDescription
/// </summary>
/// <param name="description">需要设置的文字提示信息</param>
public static void SetDescription(string description)
{
if (SplashScreenManager.Default != null && !string.IsNullOrEmpty(description))
{
SplashScreenManager.Default.SetWaitFormDescription(description);
}
}
}
}
测试代码如下:
try
{
SplashScreenToolV3.ShowSplashScreen(typeof(WaitForm1));
Thread.Sleep(5000);
throw new Exception("ccccccccc");
////Thread.Sleep(5000);
//SplashScreenToolV3.SetCaption("正在开始下载....");
////SplashScreenController.ShowSplashScreen();
//Thread _task1 = new Thread(() =>
//{
// for (int i = 0; i < 100; i++)
// {
// SplashScreenToolV3.SetDescription(i.ToString() + "%");
// Thread.Sleep(1000);
// }
//});
//Thread _task2 = new Thread(() =>
//{
// for (int i = 0; i < 100; i++)
// {
// SplashScreenToolV3.SetCaption("测试.." + i);
// Thread.Sleep(500);
// }
//});
//_task1.Start();
//_task2.Start();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
// SplashScreenController.HideSplashScreen();
}
测试效果如下图所示:
希望本文所述方法对打击的C#程序设计能有所帮助!
您可能感兴趣的文章:正则表达式regular expression详述(一)用用outlook Express 由于服务器拒绝接受发件人的电子邮件地址,这封邮件无法发送Sql server 2008 express远程登录实例设置 图文教程nodejs教程 安装express及配置app.js文件的详细步骤DevExpress SplitContainerControl用法总结DevExpress之TreeList用法实例总结SQL2005Express中导入ACCESS数据库的两种方法DevExpress之ChartControl实现饼状图百分比演示实例DevExpress之ChartControl实现柱状图演示实例node+express+ejs制作简单页面上手指南express的中间件bodyParser详解express的中间件cookieParser详解在WIN7下安装和配置SQL Server 2005 Express Edition(精简版)C#实现DevExpress本地化实例详解Express的路由详解