![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
case
qbegin © (2006-11-07 19:23:00)Как быть в такой ситуации
case ExmplDb.XNum of
1: ....
2: ....
6:
begin
if ExmplDb.YNum = 12 then
ShowMessage('12 ящиков спиртного :)')
else
ShowMessage('else');
end;
else
ShowMessage('else');
end;
В одном из условии case есть дополнительная проверка условия if, и при не верном для нас --> if срабатывает в else и я вынужден совершать такую же операцию, как при case ... --> else.
Оператор case не предпологает каких либо других решений? Или вернее, как можно по другому это сделать?
qbegin (2006-11-07 19:44:00) [21]Ну собственно мой вопрос заключался в возможности перейти к case -> else, изнутри срабатывания одного из условий case. Как я понял такой возможности нет.
Т.е. типа такого сделать нельзя.
case tmp.t1 of
1:
3:
7: if tmp.t2 = 8 then CaseGoToElse;
else
...
end;
Слово else, и прочие совпадения - случайны. Это пример.
Anatoly Podgoretsky (2006-11-07 19:42:00) [22]> Percent (07.11.2006 19:37:04) [4]
Он хочет зачем то вывести на экран слово ELSE
Percent (2006-11-07 19:37:00) [23]Просто не знаю как правильно, вот и спрашиваю.
Ты можешь сформулировать:
1. Что тебе надо?
2. Что ты уже написал?
3. Почему то, что ты написал, не соответствует тому, что тебе надо?
А то какая-то окрошка, а не вопрос.
Anatoly Podgoretsky (2006-11-07 19:34:00) [24]> qbegin (07.11.2006 19:23:00) [0]
А смысл выдавать сообщение ELSE
qbegin (2006-11-07 19:32:00) [25]Да нет - не лень. Просто не знаю как правильно, вот и спрашиваю.
Percent (2006-11-07 19:29:00) [26]Брррр... Ничего не понятно...
procedure DoOnElse;
begin
ShowMessage('else');
end;
...
case ExmplDb.XNum of
1: ....
2: ....
6: if ExmplDb.YNum = 12 then
ShowMessage('12 ящиков спиртного :)')
else
DoOnElse
else
DoOnElse
end;
P.S. Опять кого-то лень одолевает две строчки кода написать.