Вниз
Скачать: CL | DM;

Уважаемые Мастера!   Найти похожие ветки 

← →
Tornado ©   (2002-08-21 16:50) [0]

У меня на форме имеется порядка 30 кнопок SpeedButton. Вопрос: как мне отследить, нажата ли какая либо кнопка и если да - то какая именно? Нажато может быть одновременно несколько кнопок. Надо что-то вроде массива кнопок сделать наверно, я не знаю. Подскажите пожалуйста. Спасибо.


← →
MBo ©   (2002-08-21 16:53) [1]

общий обработчик, анализировать Sender


← →
lenin ©   (2002-08-21 17:01) [2]

Вариант такой:

...
private
procedure ButtonClick(Sender: TObject);
...
procedure TForm1.FormCreate(Sender: TObject);
var i: integer;
begin
for i:=1 to 30 do
with TSpeedButton.Create(self) do
begin
name:="button"+IntToStr(i);
left:=i*20;
top:=20;
width:=20;
height:=20;
OnClick:=ButtonClick;
parent:=self;

end;
end;
...
procedure TForm1.ButtonClick(Sender: TObject);
begin

Label1.caption:="Нажата"+ (Sender as TSpeedButton).name;

end;



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.01 c
14-3595
vajo
2002-08-07 11:25
2002.09.02
NTFS


1-3435
Степан
2002-08-23 07:36
2002.09.02
Выделить строку в ListView


1-3441
NewGuest
2002-08-20 14:48
2002.09.02
Windows не может завершить работу


14-3610
^Sanya
2002-08-07 22:06
2002.09.02
Работа с версией проекта


4-3677
Max2000
2002-06-28 13:55
2002.09.02
Мастера!!! Подскажите как это сделать на API? Без TCanvas?




   Наверх