![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Много кнопок - одна процедура
d3777 © (2006-04-04 23:27:00)Подскажите пожалуйста: есть, например, 10 кнопок. Нужно вызвать одну и туже процедуру но с разными параметрами
(передаётся одно целое число).
Понял что нужно использовать Sender....... а дальше?
d3777 (2006-04-05 00:20:00) [1]всем огромное спасибо
особенно за скорость ответа!!!!!!
а то уже третий день над этим бьюсь :(
sniknik (2006-04-05 00:09:00) [2]присваиваеш методу onClick всех 10-и кнопок...
procedure TForm1.ButtonClick(Sender: TObject);
procedure Hello(Tag: integer);
begin
Caption:= IntToStr(Tag);
end;
begin
Hello(TComponent(Sender).Tag);
end;
вот тебе и вызов одной и тоже процедуры с разными параметрами (если Tag конечно разный поставиш у кнопок)
GanibalLector (2006-04-04 23:47:00) [3]2 Reindeer Moss Eater © (04.04.06 23:43) [3]
Угу,не выйдет :)
Тогда,можно так :
if TButton(Obj).Name='Button1' then ...
Reindeer Moss Eater (2006-04-04 23:43:00) [4]А что, если Tag будет одинаковым, ничего не выйдет?
:)
GanibalLector (2006-04-04 23:39:00) [5]Только у кнопок Tag сделай разным.
...
private
procedure Hello(Obj:TObject);
{ Private declarations }
public
...
procedure TForm1.Button1Click(Sender: TObject);
begin
Hello(Sender);
end;
procedure TForm1.Hello(Obj: TObject);
begin
case TButton(Obj).Tag of
0:Caption:='0';
1:Caption:='1';
end;
end;
Reindeer Moss Eater (2006-04-04 23:38:00) [6]а дальше - больше