Как прервать цикл repeat

Модераторы: Duncon, Naeel Maqsudov, Хыиуду, Игорь Акопян

Ответить
demon_1607
Сообщения: 21
Зарегистрирован: 29 мар 2007, 06:27

03 апр 2007, 09:12

Код: Выделить всё

begin
repeat
fam:=InputBox('Авторизация', 'Введите свои ФИО', '');
if fam='' then MessageDlg('Вы не представились', mtWorning, [mbOk,mbCancel],0);
until fam<>''
end;
Нужно чтобы на клик кнопки Cancel форма закрывалась. Как?
Аватара пользователя
SergeyS
Сообщения: 193
Зарегистрирован: 21 ноя 2006, 17:12
Откуда: Хакасия, Абакан
Контактная информация:

03 апр 2007, 09:14

break;
прерывает все циклы
Хыиуду
Сообщения: 2388
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

03 апр 2007, 09:50

Код: Выделить всё

begin
repeat
fam:=InputBox('Авторизация', 'Введите свои ФИО', '');
if fam='' then answer:=MessageDlg('Вы не представились', mtWarning, [mbOk,mbCancel],0);
until (fam<>'') or (answer=mbCancel);
end;
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Аватара пользователя
SergeyS
Сообщения: 193
Зарегистрирован: 21 ноя 2006, 17:12
Откуда: Хакасия, Абакан
Контактная информация:

03 апр 2007, 14:59

Способ предложенный Хыиуду, является более грамотным, с точки зрения культуры программирования
Blood_Magic
Сообщения: 268
Зарегистрирован: 30 июн 2005, 14:53

04 апр 2007, 13:22

SergeyS писал(а):Способ предложенный Хыиуду, является более грамотным, с точки зрения культуры программирования

грамотный, но я так подозреваю, не отвечает потребностям, т.к. скорее всего по кнопки Cancel нужно завершить программу или еще чего, но ни как не пойди дальше
- Чем юзер похож на обезьяну?
- Он жмет на все, что жмется, дергает все, что дергается и крутит все, что крутится.
- Чем юзер отличается от обезьяны?
- У обезьяны хватает ума не воспроизводить ту последовательность, которая приводит к краху системы.
Хыиуду
Сообщения: 2388
Зарегистрирован: 06 мар 2005, 21:03
Откуда: Москва
Контактная информация:

04 апр 2007, 14:03

Ну, это все можно сделать по выходу из цикла, потому что значение переменной answer сохраняется.
Искусство программирования - заставить компьютер делать все то, что вам делать лень.
Для "спасибо" есть кнопка "Спасибо" в виде звездочки внизу под ником автора поста.
Ответить