Хотя у меня есть Опыт VBScript, это моя первая попытка создать очень простую оболочку VB.NET (приложение Windows Forms Application) для приложения командной строки. Пожалуйста, будь добр!VB.NET Marquee Progress До выхода процесса
У меня очень простой графический интерфейс с двумя кнопками, которые выполняют оба действия, и я хотел бы показать индикатор выполнения шага до тех пор, пока действие (чтение: процесс) не будет завершено (читайте: выходы).
Кнопка 'Сохранить' делает это:
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()
Я не совсем уверен, что должно быть сделано, не хватает какой-то получать формальное обучение ,
Вместо этого используйте событие «Выход». Назначьте SynchronizingObject, чтобы сделать его безопасным. –