Winform DevExpress控件库(二) 使用SplashScreenManager控件定制程序加载页面
SplashScreenManager控件:主要作用是显示在进行耗时操作时的等待界面;
位于 工具箱 -> Navigation & Layout(导航栏与布局类控件) 目录下;
在工具箱输入名称SplashScreenManager检索,然后直接拖拽到面板上便可使用;
SplashScreenManager控件整体属性描述:(选中SplashScreenManager控件实例,打开属性窗口)
蓝色为常用属性 红色为未知属性、几乎不会用到或很少用到的属性、其他托管属性、暂时不需要我们去处理的属性
| Behavior(行为) | |
| Properties(属性) | |
| AllowGlowEffect | (bool)开启发光特效(目前测试了并未看出效果) |
| ClosingDelay | (int)淡入淡出效果的延迟时间(毫秒) |
| UseFadeInEffect | (bool)使用淡入效果 |
| UseFadeOutEffect | (bool)使用淡出效果 |
| SplashForms | |
| ActiveSplashFormTypeInfo | (SplashScreen)当前激活的加载界面 |
| 布局 | |
| SplashFormLocation(X,Y) | (int)加载界面在屏幕上的位置 |
| SplashFormStartPosition | (enum)加载界面初始位置,为Manual时上一个属性生效 |
| 设计 | |
| (Name) | (string)控件名称,用于在代码中引用(唯一性) |
| GenerateMember | (bool)在实例中生成成员变量 |
| Modifiers | (enum)成员变量的修饰词 |
| 数据 | |
| (ApplicationSettings) | |
| (PropertyBinding) | 未知 |
一、新建一个加载界面:
SplashScreenManager控件只是作为加载界面的统一管理器,我们要使用加载界面,需要自行创建加载界面,两种方法如下:
1、点击SplashScreenManager控件右上角的三角箭头点开任务列表,然后点击Add Splash Screen,便可以创建一个SplashScreen窗口,创建完成之后可以在项目资源管理器中看到此窗体,并自动将其设置为当前激活的加载界面,这个设置为当前激活界面有什么用呢,其实没什么用:
然后下面会有4个属性设置,正好是对应上方属性栏中的前四个属性。
2、在项目资源管理器中直接创建SplashScreen窗口:
步骤:右击项目名称 -> 添加 -> windows窗体 -> DevExpress v15.2 Template Gallery -> Splash Screen -> Add Item
创建完成之后,点击SplashScreenManager控件右上角的三角箭头点开任务列表,在Active Splash Form一栏选择我们刚创建的SplashScreen窗口,将其手动设置为当前激活的加载界面:
二、使用加载界面
public Form1()
{
//系统资源加载
Loading(); InitializeComponent(); //加载完成
LoadingCompleted();
}
/// <summary>
/// 系统资源加载
/// </summary>
private void Loading()
{
SplashScreenManager.ShowForm(typeof(SplashScreen1));
Thread.Sleep(5000);
//加载资源
}
/// <summary>
/// 加载完成
/// </summary>
private void LoadingCompleted()
{
SplashScreenManager.CloseForm();
}
运行一下,我们便可以看到一个不错的加载界面效果,在模拟的资源加载(睡眠5秒)之后便打开主窗体:
三、新建一个等候界面
SplashScreenManager控件只是作为等候窗口的统一管理器,我们要使用在耗时操作显示的等候界面,需要自行创建等候界面,两种方法如下:
1、点击SplashScreenManager控件右上角的三角箭头点开任务列表,然后点击Add Wait Form,便可以创建一个WaitForm窗口,创建完成之后可以在项目资源管理器中看到此窗体,并自动将其设置为当前激活的等候窗口,这个设置为当前激活窗口有什么用呢,对于等候窗口还是有用:
2、在项目资源管理器中直接创建WaitForm窗口:
步骤:右击项目名称 -> 添加 -> windows窗体 -> DevExpress v15.2 Template Gallery -> Progress Indicator -> Add Item
创建完成之后,点击SplashScreenManager控件右上角的三角箭头点开任务列表,在Active Splash Form一栏选择我们刚创建的WaitForm窗口,将其手动设置为当前激活的等候界面:
四、使用等候界面
public Form1()
{
InitializeComponent(); //系统资源加载
Loading(); //加载完成
LoadingCompleted();
}
/// <summary>
/// 系统资源加载
/// </summary>
private void Loading()
{
splashScreenManager2.ShowWaitForm();
Thread.Sleep(5000);
//加载资源
}
/// <summary>
/// 加载完成
/// </summary>
private void LoadingCompleted()
{
splashScreenManager2.CloseWaitForm();
}
运行一下,我们便可以看到一个不错的等候界面效果,在模拟的资源加载(睡眠5秒)之后便打开主窗体(不过等候窗口不适合用在启动时,我这里只是做个例子哈):
结语:
好了,基本情况就是这样了,对于加载界面以及操作等候界面说起来也就是两个Form而已,可以自己定制很多东西,当然其实不用借助SplashScreenManager控件也很好实现这两种需求,主要就是一个显示窗口及隐藏窗口的操作。
Winform DevExpress控件库(二) 使用SplashScreenManager控件定制程序加载页面的更多相关文章
- 使用SplashScreenManager控件定制程序加载页面
需要devexpress版本在12.0及以上才支持 https://www.cnblogs.com/wuhuacong/p/6112461.html 在DevExpress程序中使用SplashScr ...
- 转:zTree树控件实战篇:针对多个下拉加载zTree树应该如何做出合理的配置
今天有一个zTree的朋友遇到一个非常棘手的问题,才研究zTree树控件两天就被上头催着看成果,很是苦恼.他面对的问题就是页面内多个地方需要下拉在其文本框下方加载zTree树,由于对zTree下拉加载 ...
- jQuery EasyUI动态添加控件或者ajax加载页面后不能自动渲染问题的解决方法
博客分类: jquery-easyui jQueryAjax框架HTML 现象: AJAX返回的html无法做到自动渲染为EasyUI的样式.比如:class="easyui-layout ...
- 【Android-自定义控件】SwipeRefreshDemo 下拉刷新,上拉加载
参考:https://github.com/PingerOne/SwipeRefreshDemo 谷歌官方的SwipeRefreshLayout控件,只有下拉刷新功能. 自定义的SwipeRefres ...
- MyBatis Java不同方式加载文件时的路径格式问题、Mybatis中加载.properties文件
public class LoadPropTest { public static void main(String[] args) throws IOException { //一.Properti ...
- u-boot移植总结(二)LED点灯调试 和 u-boot加载地址
(一)LED点灯调试 FL2440电路总共有4个LED0,LED1,LED2,LED3,分别接到板子GPB5,GPB6,GPB8,GPB10引脚.通过设置三个寄存器GPBCON(0x56000010) ...
- jQuery的JS库在本地运行项目时提示无法加载
最近公司有个项目在我本地运行时引用本地的jquery.js,浏览器提示无法加载 <script src="/js/newperson/jquery-1.11.3.min.js" ...
- 构建基于Chromium的应用程序(Winform程序加载Html页面)
chromium是google chrome浏览器所采用的内核,最开始由苹果的webkit发展而出,由于webkit在发展上存在分歧,而google希望在开发上有更大的自由度,2013年google决 ...
- 1. AE二次开发——地图的基本操作(加载地图文档,加载shape,加载mdb,地图的保存,缩放,漫游)
1. 加载数据Icommand方法 ICommand Butdata = new ControlsAddDataCommandClass(); Butdata.OnCreate(axMapContro ...
随机推荐
- Mysql:查用的基本操作
查看MySQL提供什么存储引擎: mysql> show engines; 查看MySQL当前默认的存储引擎: mysql> show variables like '%storage_e ...
- Spring基础复习
Spring IOC 使用注解实现Bean管理 注解类型: @Component:spring定义的通用注解,可用于注解任何bean @Repository, @Service,@Controller ...
- [ZooKeeper] 1 基本概念
ZooKeeper: A Distributed Coordination Service for Distributed Applications ZooKeeper is a distribute ...
- [LeetCode] String Compression 字符串压缩
Given an array of characters, compress it in-place. The length after compression must always be smal ...
- [LeetCode] Find Mode in Binary Search Tree 找二分搜索数的众数
Given a binary search tree (BST) with duplicates, find all the mode(s) (the most frequently occurred ...
- AXIOS源代码重点难点分析
摘要 vue使用axios进行http通讯,类似jquery/ajax的作用,类似angular http的作用,axios功能强大,使用方便,是一个优秀的http软件,本文旨在分享axios源代码重 ...
- pytorch 移动端框架 thnets 附c示例代码
前年年前做一个手机移动端图像识别项目的时候, 先后尝试了mxnet,thnets,caffe,tensorflow. 当时的情况是,mxnet内存管理奇差,内存经常由于模型运算分配不足,app挂掉. ...
- mysql 从聚合函数group by到sql_mode
说到group by, 想必大家都不陌生, 就是对查询的数据进行分组,我们可以通过该操作实现一些特殊需求,比如去重. 最近在项目中使用HQL:" from TSjrz where CBh = ...
- Linux(七)开机,重启和用户登录注销
7.1 关机&重启命令 基本介绍: shutdown -h now 立刻进行关机 shutdown -h 1 1分钟后关机 shutdown -r now ...
- 51 nod 1421 最大MOD值
1421 最大MOD值 题目来源: CodeForces 基准时间限制:1 秒 空间限制:131072 KB 分值: 80 难度:5级算法题 有一个a数组,里面有n个整数.现在要从中找到两个数字(可以 ...