Что нового

Обработать нажатие кнопок MsgBox

Lawrmini

Новичок
Сообщения
31
Репутация
0
Доброго времени суток всем.
Помогите обработать нажатие кнопок на Msgbox'e
В чем проблема. Читаю ini файл в начале запуска скрипта. После чтения выдается MsgBox с флагом 6.

При нажатии на кнопку Повторить повторно читается ini файл. При нажатии кнопки Продолжить выполняется основной скрипт. При нажатии Отмена все останавливается и появлчется MsgBox с сообщение об остановке. Все работате как бы корректно.

Но если сначала нажать Повторить , а потом Продолжить или Отмена , то все останавливается.

Вот до чего додумался

Код:
Dim $button = READINI()

Func READINI()
Global $full = IniRead ( "test.ini", "Sklad", "size", 0 ) ; Full silos size
Dim $button = MsgBox (6 , "Проверка" , "Вы указалаи , что у Вас"$full)
Return $button
EndFunc
;~
;~   Продолжить код  	11
;~   Повторить код      10
;~	 Отмена             2

if $button = 10 Then
   While $button = 10
	  $button = READINI()
   WEnd
   elseif $button = 11 Then
;~ 		 тут скрипт

	  MsgBox (0 , "TEST" , "Сделано")
   elseif $button = 2 Then
	  MsgBox(0 , "TEST" , "Приложение закроется через 5 секунд ", 5)
   EndIf
 

InnI

AutoIT Гуру
Сообщения
4,922
Репутация
1,432
Код:
Func READINI()
  Local $full = IniRead("test.ini", "Sklad", "size", 0) ; Full silos size
  Return MsgBox(6, "Проверка", "Вы указалаи , что у Вас " & $full)
EndFunc   ;==>READINI
;~
;~   Продолжить код     11
;~   Повторить код      10
;~   Отмена             2

While 1
  $button = READINI()
  If $button = 10 Then
    ContinueLoop
  ElseIf $button = 11 Then
    ;~       тут скрипт

    MsgBox(0, "TEST", "Сделано")
    ; ExitLoop ; если надо - выход
  ElseIf $button = 2 Then
    MsgBox(0, "TEST", "Приложение закроется через 5 секунд ", 5)
    ExitLoop
  EndIf
WEnd

; вариант цикла без $button
#cs
While 1
  Switch READINI()
    Case 10
      ContinueLoop
    Case 11
      ;~       тут скрипт

      MsgBox(0, "TEST", "Сделано")
      ; ExitLoop ; если надо - выход
    Case 2
      MsgBox(0, "TEST", "Приложение закроется через 5 секунд ", 5)
      ExitLoop
  EndSwitch
WEnd
#ce
 
Автор
L

Lawrmini

Новичок
Сообщения
31
Репутация
0
InnI
В принципе то , что нужно. Спасибо.
Только при нажатии кнопки Отмена и Продолжить действие проходит на сразу. Сначала повторно появляется тот же MsgBox. А когда во второй раз нажимаю , тогда срабатывает как надо.
 
Автор
L

Lawrmini

Новичок
Сообщения
31
Репутация
0
Извиняюсь. Не углядел эту строчку у себя. Вверх уплыла за пределы экрана.
 
Верх