Что нового

Как прервать выполнение скрипта в Case ?

agikon

Знающий
Сообщения
789
Репутация
17
Например

Код:
While 1
	$nMsg = GUIGetMsg()
    Switch $nMsg
		
		Case $GUI_EVENT_CLOSE
			exit
		
		Case $var1
			; код1 
			;как вот здесь сделать чтобы код2 и код3 не обраьатывались ?
			
			; код2			
			; код3				
		
EndSwitch


Я вот думал return но наверно ретурн эт только для функций.
Конечно можно код2 и код3 поовесить на проверку определнной переменной, но хотелось бы сразу прекратить обработку кода на подобии ретуреа.
Подскажите пожалуйста.
 

inververs

AutoIT Гуру
Сообщения
2,135
Репутация
465
:smile: Всегда думал что есть команды выхода. Если никто не найдет - то можно сделать так:
Код:
Do
Switch 2
	Case 1
	Case 2
		ConsoleWrite(1 & @LF)
		ConsoleWrite(2 & @LF)
		ExitLoop
		ConsoleWrite(3 & @LF)
	Case 3
EndSwitch
Until 1
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
ContinueLoop - начнёт цикл с начала.
 
Автор
A

agikon

Знающий
Сообщения
789
Репутация
17
Спасибо это именно то что требовалось!
 

AZJIO

Меценат
Меценат
Сообщения
2,874
Репутация
1,194
CreatoR
ContinueLoop - начнёт цикл с начала.
Если быть точным то с конца, либо с проверки подусловия, в новой версии справки пришлось поправить формулировку, так как в цикле Do...Until подусловие в конце цикла и при True цикл завершится, а не начнётся с начала (начало воспринимается верхняя строка).
 
Верх