重写 WaitDialogForm 控件
2016-07-02 17:52
543 查看
一、Dev的等待提示框
用过Devexpress的用户都知道,Dev自带了默认的等待进度提示框,效果如下:
简单使用代码:
在中间我加入了3秒等待时间,否则,提示框闪的太快。
这里在创建对象的时候,带入了两个参数,当然还有其他更多的参数,可以对字体进行设置,等待图片进行设置等。
二、我改过的另外版的等待提示框
先出具下效果看看:
我把dev的等待图片改成了progressbarcontrol,这样更能看到进度的进展。我将窗体更名为:ShowDialogForm。
为了能看到效果,我加了一个循环来显示执行进度,并用进度条来友好提示,如果是遇到大量的数据库,就不需要此循环了
简单使用代码:
ShowDialogForm等待窗体的主要代码:
用过Devexpress的用户都知道,Dev自带了默认的等待进度提示框,效果如下:
简单使用代码:
WaitDialogForm sdf = new WaitDialogForm("提示", "正在登录......"); for (int j = 1; j < i; j++) { Thread.Sleep(3000); sdf.SetCaption("执行进度(" + j.ToString() + "/" + i.ToString() + ")"); } sdf.Close();
在中间我加入了3秒等待时间,否则,提示框闪的太快。
这里在创建对象的时候,带入了两个参数,当然还有其他更多的参数,可以对字体进行设置,等待图片进行设置等。
二、我改过的另外版的等待提示框
先出具下效果看看:
我把dev的等待图片改成了progressbarcontrol,这样更能看到进度的进展。我将窗体更名为:ShowDialogForm。
为了能看到效果,我加了一个循环来显示执行进度,并用进度条来友好提示,如果是遇到大量的数据库,就不需要此循环了
简单使用代码:
int i = 1999; ShowDialogForm sdf = new ShowDialogForm("提示", "正在登录......","请耐心等候,正在验证您的身份!",i); for (int j = 1; j < i; j++) { sdf.SetCaption("执行进度(" + j.ToString() + "/" + i.ToString() + ")"); } login(); sdf.Close();
ShowDialogForm等待窗体的主要代码:
/// <summary> /// 设置 /// </summary> /// <param name="_caption">提示</param> /// <param name="_message">消息内容</param> /// <param name="_content">详细描述</param> /// <param name="_maxProcess">进度条最大值</param> public ShowDialogForm(string _caption, string _message,string _content,int _maxProcess) : this() { this.Caption = ""; this.Message = ""; this.Content = ""; this.Caption = _caption == "" ? "提示" : _caption; this.Message = _message == "" ? "正在加载,请稍后......" : _message; this.Content = _content; this.maxProcess = _maxProcess > this.MinProcess ? _maxProcess : MinProcess; lblCaption.Text = this.Caption; lblMessage.Text = this.Message; lblContent.Text = this.Content; progressShow.Properties.Minimum = MinProcess; progressShow.Properties.Maximum = MaxProcess; progressShow.Properties.Step = 1; progressShow.PerformStep(); this.ShowInTaskbar = false; this.TopMost = true; this.Show(); this.Refresh(); }
相关文章推荐
- 人工智能的突破需要颠覆图灵机吗?
- Tair源码阅读1---ConfigServer
- Xenomai 改造 Ubuntu
- UVA 10780 Again Prime? No Time. [质因子分解]【数论】
- async await关键字后面的处理
- 如何学习opensips/kamailio/openser
- Freely Available Software for Linear Algebra (August 2015) 各种求解器的总结
- wait()、sleep()以及yield()函数
- Codeforces Round #360 (Div. 2) D. Remainders Game
- http://blog.csdn.net/steveguoshao/article/details/38414145
- 2016年7月2日学习3 流式布局container
- grails在gsp页面显示资源图片
- git clone server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile
- synchronized、wait、notify、notifyAll
- main函数的参数
- Beyond video games: New artificial intelligence beats tactical experts in combat simulation
- LeetCode - 219. Contains Duplicate II
- zabbix Maintenance维护周期
- zabbix Maintenance维护周期
- Jna & twain