![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как определить событие OnClik в динамически созданном объекте Bu
Aleks © (2011-11-25 14:00:00)Доброго времяни суток. Как определить событие OnClik в динамически созданном объекте Button.
Я делаю:
procedure TForm1.Button1Click(Sender: TObject)
Var
Butto: array of TButton;
Begin
Butto := TButton.Create(Self);
Butto.Parent := Form1;
// создал кнопку но как и где отследить её нажатие ??? звук Beep по её нажатию например.
End;
Объясните с примером, пожалуйста.
Aleks (2011-11-25 14:44:00) [1]Спасибо
OW (2011-11-25 14:23:00) [2]т.е. пишете метод OnClickBtn
TForm1 = class(TForm)
btn1: TButton;
procedure btn1Click(Sender: TObject);
private { Private declarations }
public { Public declarations }
procedure OnClickBtn(sender: TObject);
end;
и реализация его
procedure TForm1.OnClickBtn(sender: TObject);
begin
if sender is TButton then
ShowMessageFmt('Êíîïêà ñ tag = %d',[TButton(sender).Tag]);
end;
затем присвоение
b := TButton.Create(nil);
b.OnClick := OnClickBtn;
Aleks (2011-11-25 14:22:00) [3]OW -- Спасибо
Aleks (2011-11-25 14:21:00) [4]Спасибо Омлет, RWolf . Разобрался.
Butto.OnClick := //а тут пишем имя процедуры-обработчика
OW (2011-11-25 14:20:00) [5]procedure TForm1.OnClickBtn(sender: TObject);
begin
if sender is TButton then
ShowMessageFmt('Êíîïêà ñ tag = %d',[TButton(sender).Tag]);
end;
procedure TForm1.btn1Click(Sender: TObject);
var
b: TButton;
begin
b := TButton.Create(nil);
b.Tag := 1;
b.Visible := false;
b.Parent := Form1;
b.Left := 50;
b.Top := 50;
b.OnClick := OnClickBtn;
b.Visible := True;
b := TButton.Create(nil);
b.Tag := 2;
b.Visible := false;
b.Parent := Form1;
b.Left := 150;
b.Top := 150;
b.OnClick := OnClickBtn;
b.Visible := True;
end;
Омлет (2011-11-25 14:15:00) [6]Butto := TButton.Create(Self);
Butto.Parent := Form1;
Butto.OnClick := MyBtnClick;
procedure TForm1. MyBtnClick(Sender: TObject);
begin
ShowMessage('olala');
end;
Aleks (2011-11-25 14:12:00) [7]RWolf © (25.11.11 14:03) [1]
btn.OnClick := MyBtnClick;
Объясни по подробней пожалуйста.
RWolf (2011-11-25 14:03:00) [8]btn.OnClick := MyBtnClick;