【发布时间】:2014-09-29 15:45:54
【问题描述】:
虽然我有一些 VBScript 经验,但这是我第一次尝试为命令行应用程序创建一个非常简单的VB.NET(Windows 窗体应用程序)包装器。请善待!
我有一个非常简单的 GUI,带有两个按钮,它们都执行一个操作,我想显示一个选取进度条,直到操作(读取:过程)完成(读取:退出)。
“保存”按钮执行以下操作:
Dim SaveEXE As Process = Process.Start("save.exe", "/whatever /arguments")
我从那里开始选取进度条:
ProgressBar1.Style = ProgressBarStyle.Marquee
ProgressBar1.MarqueeAnimationSpeed = 60
ProgressBar1.Refresh()
我以为我可以使用 SaveEXE.WaitForExit(),但 Marquee 启动,然后在中间停止,直到进程退出。对于观看的人来说不是很有用;他们会认为它挂了。
我想也许我可以做这样的事情,但这会导致我的 VB.Net 应用程序崩溃
Do
ProgressBar1.Style = ProgressBarStyle.Marquee
ProgressBar1.MarqueeAnimationSpeed = 60
ProgressBar1.Refresh()
Loop Until SaveEXE.ExitCode = 0
ProgressBar1.MarqueeAnimationSpeed = 60
ProgressBar1.Refresh()
我不完全确定需要做什么,除非接受一些正式培训。
【问题讨论】:
-
改用 Exited 事件。分配 SynchronizingObject 以使其安全。
标签: vb.net progress-bar