VB - 进度条没有增加正确的数量?

时间:2014-01-01 20:44:41

标签: vb.net

我有一个程序有一些变数。我正在尝试交互变量,并通过使用它们来增加进度条,使它们显示时间的视觉透视。

代码的再现:

Dim count As Integer = ListBox1.Items.Count
Dim _toProgress As Integer = 100 / count
ProgressBar1.Increment(_toProgress)

我已经将这一切都放在一个循环中,所以在进程(循环)完成后添加“_toProgress”...

这基本上就是我简化的代码。 问题是,当我增加进度条时,它会在它应该完成之前完成。

e.g: 我有一个循环完成175过程: 100/175 = 0.5714285714285714 所以,_toProgress应该等于'0.5714285714285714'。 一旦完成其中一个进程,就会向增量添加'_toProgress'(ProgressBar1.Increment(_toProgress))。

我知道'_toProgress'整数是正确的,因为'0.5714285714285714'* 175 = 100。

所以我不知道为什么进度条会在它应该完成之前完成任何线索?

1 个答案:

答案 0 :(得分:4)

您只能以整数增量递增ProgressBar。

最简单的解决方案是将ProgressBar的Maximum属性更改为您拥有的进程数,然后递增1。

例如:

ProgressBar1.Maximum = ListBox1.Items.Count
ProgressBar1.Increment(1)