|
#1
|
|||
|
|||
Тест-соответствие
Люди, подскажите как сделать простенький тест-соответствие на Дельфи.
Немного опишу каким он должен быть: в форме есть несколько кнопок(чётное число), стоят они в 2 столбика друг на против друга(Понятие, определение), и надо чтобы по нажатии 2 кнопок из разных столбцов, если верно, то они исчезали, если не верно, то внизу формы в строке "Количество ошибок" прибавлялось 1. Заранее спасибо. |
#2
|
||||
|
||||
Всем кнопкам из одной пары одинаковый Tag. Каждой паре свой Tag. Всем кнопкам присваеваешь одно событие OnClick. Задаешь две глобальные переменные: LastButton: TButton и SecondClick: Boolean;
В событии OnClick пишешь: Код:
begin if SecondClick then begin if LastButton.Tag = TButton(Sender).Tag then begin LastButton.Hide; TButton(Sender).Hide; end else ShowMessage('Ошибка!!!'); SecondClick := false; end else begin LastButton := TButton(Sender); SecondClick := true; end; end; Последний раз редактировалось dr. F.I.N., 10.05.2010 в 19:23. |
#3
|
|||
|
|||
Цитата:
|
#4
|
|||
|
|||
В дельфи я не особо понимаю, но разбираюсь потихоньку...
Подскажите ещё плз, как мне пристроить в этот код "счётчик ошибок" и блокировку на Двойное нажатие кнопки. Со счётчиком сколько не пробовал по-разному, так ничего и не вышло: в нужную мне переменную он добавляет не только в случае ошибки, но и в случае правильного выбора... А с блокировкой двойного нажатия вообще ничего не вышло( |
#5
|
||||
|
||||
Цитата:
ну прибавляй переменную вместе с сообщение об ошибке: Код:
begin if SecondClick then begin if LastButton.Tag = TButton(Sender).Tag then begin LastButton.Hide; TButton(Sender).Hide; end else begin Inc(ErrCnt{имя переменной с числом ошибок}); //Inc то же самое что и ErrCnt := ErrCnt + 1 ShowMessage('Ошибка!!!'); end; SecondClick := false; end else begin LastButton := TButton(Sender); SecondClick := true; end; end; о_О подозрительный ник AlexD TAleD = class(TUser) public function HelpMe(ASubject, ARequest: String): String; function GiveMeExample(ASubject: String): TStringList; procedure WriteReview(APost: Integer; ADescription: TStringList); end; |
#6
|
|||
|
|||
Цитата:
чем это подозрительный?) з.ы.: вот блин! спалили) |