在DevExpress程序中使用SplashScreenManager控件实现启动闪屏和等待信息窗口

1、SplashScreenManager控件的使用

这个控件一般人很少注意到,毕竟不是很常用,我们可以通过在控件工具箱里面进行搜索,找到后拖动到WInform窗口即可,如下界面所示。

然后在SplashScreenMananger控件的右上角上单击三角符号,利用连接按钮添加两个窗口,一个是启动界面的闪屏窗口,一个是等待界面窗口。

最后得到两个新建的界面,稍作调整就可以使用在程序中了。

 

 2、SplashScreenManager控件的调用

 上面我们通过控件手工添加的方式增加了两个界面窗体,如果需要在程序中使用,那么需要进行一定的代码调用处理。

例如我们在程序启动的时候,程序入口的代码修改如下。

其中启动闪屏窗口的代码就是

 //显示闪屏窗体
SplashScreenManager.ShowForm(typeof(FrmSplashScreen));
Thread.Sleep(3000);

在主程序窗体中,我们加载完毕界面后,我们需要手工关闭闪屏窗体的显示,代码如下所示。

 

而在界面中,如果我们需要显示等待窗口,如在耗时的数据获取和更新操作上,我们可以提示用户等待一下,那么这个时候就应该做等待信息窗口的显示了,如下界面效果所示。

为了实现上面的操作,我们可以对这个窗口的调用做一些简单的初始化和封装处理,如下代码所示。

复制代码
private SplashScreenManager _loadForm;
/// <summary>
/// 等待窗体管理对象
/// </summary>
protected SplashScreenManager LoadForm
{
    get
    {
        if(_loadForm == null)
        {
            this._loadForm = new SplashScreenManager(this, typeof(FrmWaitForm), true, true);
            this._loadForm.ClosingDelay = 0;
        }
        return _loadForm;
    }
}
/// <summary>
/// 显示等待窗体
/// </summary>
public void ShowMessage()
{
    bool flag = !this.LoadForm.IsSplashFormVisible;
    if (flag)
    {
        this.LoadForm.ShowWaitForm();
    }
}
/// <summary>
/// 关闭等待窗体
/// </summary>
public void HideMessage()
{
    bool isSplashFormVisible = this.LoadForm.IsSplashFormVisible;
    if (isSplashFormVisible)
    {
        this.LoadForm.CloseWaitForm();
    }
}
复制代码

最后在数据更新的时候,我们调用上面的函数

 

posted @ 2017-09-19 09:31  孤夏  阅读(1082)  评论(0编辑  收藏  举报