![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Здравствуйте!
Есть код: Код:
if (условие 1) or (условие 2) ... or (условие 30) then... Как узнать какое условие верное? Например - условие 22 оказалось верным, и выполняется then..., но необходимо узнать какое именно условие было верным. Условия Код:
(text = edit1.text) or (text = edit2.text) ... Последний раз редактировалось M.A.D.M.A.N., 16.07.2014 в 13:15. |
#2
|
||||
|
||||
![]() or здесь не подходит, похоже придётся примерно так делать
Код:
... prosedure ptg(ds: integer); begin Label1.Caption:='Сработало условие ' + IntToStr(ds); Здесь выполнение then .. end; begin if (условие 1) then ptg(1); if (условие 2) then ptg(2); if (условие 3) then ptg(3); if (условие 4) then ptg(4); end; Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#3
|
||||
|
||||
![]() Цитата:
Код:
... prosedure ptg(ds: integer; condition: boolean); begin if condition then begin Label1.Caption:='Сработало условие ' + IntToStr(ds); Здесь выполнение then .. end; end; begin ptg(1, a=b); ptg(2, a=b); ptg(3, a=b); ptg(4, a=b); end; — Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#4
|
||||
|
||||
![]() Да фиг его знает, Мэд, какие там у ТС условия, может совершенный разнобой, да и если совсем по-чесноку, непонятно, зачем такой результат вообще нужен, сработало - да и так хорошо, проще тогда просто ифзенами обойтись
Я не понял Вашего вопроса, но всё же Вам на него отвечу! |
#5
|
|||
|
|||
![]() Если задача указана в посте автора и является таковой (т.е. он не пример привел, а реальную потребность), то лучше динамически создать эдиты (можно в цикле), закинуть их в массив, и циклом по нему пробежаться, делая проверку, тогда и кода будет немного, не будет копипасты, и узнать выполнившееся сравнение в цикле проще простого.
Вообще, 30 эдитов говорят, что Вы делаете что-то неправильно. Поглядите на компонент TStringGrid на вкладке Additional палитры компонент, лучше использовать его для структурированного ввода теста, а не плодить эдиты. В гриде сделать проверку циклом тоже просто и определить, в какой ячейке нашлось совпадение текста. |
#6
|
||||
|
||||
![]() Цитата:
Примеры (из моих проектов): ![]() ![]() Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |
#7
|
||||
|
||||
![]() Aristarh Dark, они хоть динамически на форму кладутся?
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#8
|
||||
|
||||
![]() Да ты что, только вручную, только хардкор
![]() Некоторые программисты настолько ленивы, что сразу пишут рабочий код. Если вас наказали ни за что - радуйтесь: вы ни в чем не виноваты. |