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

Динамически создаваемые компоненты.   Найти похожие ветки 

← →
sashok   (2004-07-23 22:10) [0]

Я по ходу программы создаю две кнопки и делаю процедуру ButtonClick для обрабатывания ONClick этих кнопок.
Как мне узнать: какая кнопка вызвала эту процедуру (тоесть, проще говоря - какая кнопка была нажата)?

Var but1,but2:tbutton;

Procedure ButtonClick(sender: TObject);
Begin
// Вот здесь собственно мне и нужно узнать что за кнопка
// вызвала эту процедуру
End;

Begin
but1:=TButton.Create(Form1);
but2:=TButton.Create(Form1);
but1.Parent:=Form1;
but2.Parent:=Form1;
but1.ONClick:=@ButtonClick;
but2.ONClick:=@ButtonClick;
End;

Заранее спасибо


← →
Palladin ©   (2004-07-23 22:12) [1]

TNotifyEvent+F1


← →
KADAN ©   (2004-07-24 02:30) [2]

задай свойство Tag кнопкам (например, Button1.Tag:=1, Button2.Tag:=2)
в ButtonClick проверяй TButton(Sender).Tag


← →
Германн ©   (2004-07-24 02:44) [3]

А не проще ли в данном случае в процедуре ButtonClick проверять - if Sender = but1 then...
 else if Sender = but2 then...
   else ShowMessage("Error");


← →
\/\//\/\   (2004-07-24 03:57) [4]

А ещё проще, в этом случае, для каждой кнопки сделать свой обработчик: Button1Click, Button2Click.

> sashok   (23.07.04 22:10)

Ты же наверное хочешь после того, как определишь какая кнопка была нажата, выполнить разные действия для той или иной кнопки. Вот и не нужно будет определять. Всё-равно ведь используешь разные переменные для TButton.


← →
Palladin ©   (2004-07-24 15:24) [5]

Сколько вас умных... и ни один из умных не сказал что обработчик события должен быть методом класса...


← →
\/\//\/\   (2004-07-24 18:43) [6]


> Palladin ©   (24.07.04 15:24) [5]
Сколько вас умных...


Нет, нет! Не переживай - ты умнее:)



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

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



Память: 0.46 MB
Время: 0.021 c
9-1078931622
DenKop
2004-03-10 18:13
2004.08.08
Примитивы opengl


1-1090272049
кактусбел
2004-07-20 01:20
2004.08.08
как найти все фаилы определенного типа в каталоге


1-1090780744
Ландграф Павел
2004-07-25 22:39
2004.08.08
удаление элемента динамического массива


14-1090409056
ййй
2004-07-21 15:24
2004.08.08
PHP NUKE


3-1089879235
Акуля
2004-07-15 12:13
2004.08.08
HELP with ADOQuery!!!




   Наверх