PDA

Показать полную графическую версию : [решено] Обработка нажатия кнопок


korenza
18-06-2010, 09:25
Всем Добрый день, никак не могу справиться с вот такой задачей. Вроде и гуглил, но чет пока не решить вопрос. Вот написал такой код, необходимо чтобы при вводе пустой строки выводилось сообщение, что вы не ввели путь, с 2 кнопками, повтор и отмена. Повтор возвращаемся к диалогу ввода пути, отмена - выход. И соответственно в диалоге ввода пути отмена тоже выход из скрипта. Подскажите как реализовать эту задачу, пока я в VBS слабоват.
Dim Input
Dim MyVar
Input = InputBox("Введите путь к файлу проверки")
Set WshShell = WScript.CreateObject("WScript.Shell")
if Input = default then
MyVar = MsgBox ("Вы не ввели путь к файлу", 5 , "Демонстрационное окно сообщения")
end if
Set FSO = CreateObject("Scripting.FileSystemObject")
Wscript.Echo FSO.GetFileVersion(Input)

Petya V4sechkin
18-06-2010, 10:34
korenza, как-то так?
Dim Input, MyVar
Do Until False
Input = InputBox("Введите путь к файлу проверки")
If Input = "" Then
MyVar = MsgBox("Вы не ввели путь к файлу", vbRetryCancel + vbExclamation, "Демонстрационное окно сообщения")
If MyVar = vbCancel Then WScript.Quit
Else
Exit Do
End If
Loop
Set FSO = CreateObject("Scripting.FileSystemObject")
WScript.Echo FSO.GetFileVersion(Input)

И соответственно в диалоге ввода пути отмена тоже выход из скрипта.
При нажатии кнопки Отмена (или клавиши Esc) InputBox возвращает пустую строку, и это невозможно разграничить с вводом пустой строки при нажатии ОК (или клавиши Enter).

korenza
18-06-2010, 10:43
Petya V4sechkin, Большое спасибо, а то я со своими экспериментами с DO LOOP - ом, встрял в бесконечный цикл.




© OSzone.net 2001-2012