大家在安装程序或者下载一个文件时,会出现一个信息画面,能够让用户知道安装或者下载的进度,这样的信息画面就是通过进度条来显示的,当程序运行的时间较长时,也可以加入进度条,通过图形化界面来提供某些程序操作的进度。
进度条控件:
进度条常见的属性和方法:
Miimum:默认值为0,设置progressbar进度条控件的最大值
Maximum:默认值为100,设置progressbar进度条控件的最小值
Value:默认值为0,设置progressbar进度条控件的实际进度值
Step:默认值为0,设置progressbar进度条控件每次递增的步长值
Style:默认值为block,显示progressbar进度条的样式
Increment():指定progressbar进度条前移的位置
PerformStep():以Step属性值来显示进度条的刻度
在Style里面有以下三种可供选择,它们分别是:
Block:以数值刻度来表示
Continuous:只会显示进度,并不显示刻度
Margree:以跑马灯方式来显示,无法使用量化进度
使用编辑项:
StatusStrip控件本身并没有面板的功能,想要在面板上显示一些信息,必须加入面板,而toolStripStatusLabel对象提供了面板功能,再根据应用程序的需要来显示文字或者图标信息。
通过StatusStrip提供的"编辑项",可以将对象进行重新排列,"编辑项"的用法如下。
step1启动编辑项:打开工具箱,双击StatusStrip控件加入到窗体上,并在窗体下面的格子里面也出现了StatusStrip控件的标识
Step2点击编辑项:鼠标右键单击StatusStrip控件,选择Edit Items编辑项指令
Step3设置项集合编辑器:展开编辑器后,选择statuslabel项→单击add添加按钮,则会加入toolStripStatusLabel1对象,并在成员中列出,也可以通过删除标识进行删除成员→设置成员的属性值
计时的timer控件:
timer控件是一个非常特殊的控件,它是windows窗体专有的,可以用来处理计时操作,在一定的时间间隔内可以改变画面上图片的位置,让它具有动画效果。
看看timer有哪些成员:
Enabled:默认值false,是否启动定时器,false为不启动,ture为启动
Interval:默认值0,设置定时器的间隔时间,1000表示1秒
Tick()事件:间隔时间内所触发的事件
程序在运行时,Timer控件是不显示的,因此,在程序窗体界面设计时,并不考虑Timer控件的参与。Tick()事件会根据Interval的时间周期值来不断的更新画面。
实例学习
step1:在窗体上加入2个button控件和1个program控件,并进行相应的属性设置
step2:加入StatusStrip控件后,右键单击进入编辑项后,选择statuslabel进行添加后,将toolStripStatusLabel1的autosize设置为false,将text属性值设置为"显示时间",然后再加入一个toolStripStatusLabel2,也将其autosize设置为false将text属性值设置为"显示进度"
Step3:添加timer控件,并设置其属性,加入的timer控件不会显示在窗体上,它在窗体下方,是一个后台运行的组件
双击开始计时按钮进入代码编辑区,后编写下列代码:
timer1.Start();//启动计时器
button1.Enabled = false;//使按钮暂时不起作用
button2.Enabled = false;
完整的程序代码如下:
进入窗体界面,双击timer控件,进入代码编辑区,编写下列代码:
progressBar1.Increment(20);//显示进度条位置
//在状态栏显示文字信息
toolStripStatusLabel2.Text = string.Concat(progressBar1.Value, "% 运行完成");
//显示日期
toolStripStatusLabel1.Text = DateTime.Now.ToShortDateString();
//判断是否完成
if(progressBar1.Value == progressBar1.Maximum )
{
//恢复按钮作用
button1.Enabled = true;
button2.Enabled = true;
timer1.Stop();
}
完整的程序代码如下:
结束按钮加入下列代码:
运行程序后的界面:
点击开始计时后,可以看到程序完成的进度啦:
当全部完成后,按钮都恢复了可用状态:
只要你具备了精神气质的美,只要你有这样的自信,你就会拥有风度的自然之美。——金马