十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
VB.Net中提供了ProgressBar控件,用于显示进度条
创新互联公司专注于靖州企业网站建设,响应式网站开发,商城网站建设。靖州网站建设公司,为靖州等地区提供建站服务。全流程按需制作,专业设计,全程项目跟踪,创新互联公司专业和态度为您提供的服务
我建议你不要用进度条显示剩余时间而是显示执行进度
这样比较好控制
设置ProgressBar的Minimum和Maximum属性为循环的起始和终止数值
然后在代码的循环体中计算当前循环的进度,然后设置进度条的Value属性,
将进度显示在进度条上
比如,简单的例子:
Dim Progress As Integer
ProgressBar1.Minimum = Min
ProgressBar1.Maximum = Max
For i As Integer = Min To Max
'执行计算.......
Progress = i \ Max '计算进度
ProgressBar1.Value = Progress '显示进度
My.Application.DoEvents() '使用Doevents防止窗体假死使进度条看不到,但是会严重降低运行速度
Next
这里的优化技巧是,可以设置为每隔N次循环才更新进度条
If Not Progress Mod N Then ProgressBar1.Value = Progress
不然进度条的更新也许比计算的速度还要慢很多
这是典型对.net构架不理解造成的!
只要是.net编程,一定使用的是.net类库,必须是同运行版本的.net支持方可运行。而所谓的vb.net只是说编程的语言层使用的是vb语言而已。该语言在.net构架下被编译成为IL语言(MSIL,严格说来是IL的一个子集)。而上层的语言只是产生软件时所使用的一个不同语言规则而已,与IL已经没有任何相关性了。上层语言无论是C#还是VB,甚至是Java(J#)均只适应编程人员的一个策略,与整个构造没有多大的相关性。
.net的最终目的就是让不同的语言编程人员能协同工作,那么语言在其中的区别没有多大了,所有的运行核心都是由.net完成的,没有必须依赖于.net。这是没有任何疑问的。
vb.net就是.net,只是表示用VB语言人的称呼,用C#的则称其为C#.net,但不管是哪种,它是无法脱离.net的。
使用VB.NET关闭指定WindowsName的页面可以通过使用System.Diagnostics.Process类的Kill方法来完成。
Kill方法接受一个参数,即要关闭的进程的窗口名称,该窗口名称可以通过Process.GetProcessesByName函数获得,这样就可以遍历找到任何一个指定的窗口名称并将其关闭。例如:
Dim process As Process = Process.GetProcessesByName(“MyApplication.exe”)
process.Kill()