Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2012.03.04;
Скачать: [xml.tar.bz2];

Вниз

Как определить событие OnClik в динамически созданном объекте Bu   Найти похожие ветки 

 
Aleks   (2011-11-25 14:00) [0]

Доброго времяни суток. Как определить событие  OnClik в динамически созданном объекте Button.
Я делаю:

       procedure TForm1.Button1Click(Sender: TObject)  
            Var
             Butto: array of TButton;
       Begin      
          Butto := TButton.Create(Self);
          Butto.Parent := Form1;
          // создал кнопку  но как и где отследить её нажатие ??? звук Beep по её нажатию например.
       End;

Объясните с примером, пожалуйста.


 
RWolf ©   (2011-11-25 14:03) [1]

btn.OnClick := MyBtnClick;


 
Aleks   (2011-11-25 14:12) [2]

RWolf ©   (25.11.11 14:03) [1]

btn.OnClick := MyBtnClick;

Объясни по подробней пожалуйста.


 
Омлет ©   (2011-11-25 14:15) [3]

Butto := TButton.Create(Self);
   Butto.Parent := Form1;
   Butto.OnClick := MyBtnClick;

procedure TForm1.MyBtnClick(Sender: TObject);
begin
 ShowMessage("olala");
end;


 
OW ©   (2011-11-25 14:20) [4]

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;


 
Aleks   (2011-11-25 14:21) [5]

Спасибо Омлет, RWolf . Разобрался.

Butto.OnClick := //а тут пишем имя процедуры-обработчика


 
Aleks   (2011-11-25 14:22) [6]

OW -- Спасибо


 
OW ©   (2011-11-25 14:23) [7]

т.е. пишете метод 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:44) [8]

Спасибо



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

Форум: "Начинающим";
Текущий архив: 2012.03.04;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.004 c
15-1321182125
clickmaker
2011-11-13 15:02
2012.03.04
Баг в DMClient


15-1321449825
aka
2011-11-16 17:23
2012.03.04
Движение объектов по форме


6-1252514641
ramin
2009-09-09 20:44
2012.03.04
Хочу узнать имена компьютеров в локальной сети


2-1322338716
Крестовый туз
2011-11-27 00:18
2012.03.04
Билдер на Delphi


15-1320987591
Perevamon
2011-11-11 08:59
2012.03.04
Почему запрос выводит лишние строки?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский