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

Вниз

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

 
Тимофейка   (2006-05-17 22:33) [0]

вот кнопку создаю
var
ok:TButton;
begin
ok := TButton.Create(nil);
ok.Parent := form1;
ok.Top := 40;
ok.Left := 0;
ok.Caption:= "OK";

подскажите как создать для этой же кнопки событие онклик,например чтоб по нажатию закрывалось form1


 
Gydvin ©   (2006-05-17 22:39) [1]

unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
   procedure CloseClick(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

var
ok:TButton;
begin
ok := TButton.Create(nil);
ok.Parent := form1;
ok.Top := 40;
ok.Left := 0;
ok.Caption:= "OK";
ok.OnClick:=CloseClick ;

end;

procedure TForm1.CloseClick(Sender: TObject);
begin
close
end;


 
Джо ©   (2006-05-17 22:44) [2]

"Создать событие" нельзя. Можно назначить его обработчик. Завести, например, в классе формы, метод с параметрами, которые требуются обработчику и просто присвоить его экземпляру кнопки. Вот так:

 TForm1 = class(TForm)
   ...
 private
   procedure OnClickEventHandler (Sender: TObject);
   ...
 end;

implementation

procedure TForm1.OnClickEventHandler(Sender: TObject);
begin
 Close
end;

procedure TForm1.Button1Click(Sender: TObject);
var
 Button: TButton;
begin
 Button := TButton.Create(Self);
 Button.Parent := Self;
 Button.OnClick := OnClickEventHandler;
end;


Также, обрати внимание, что использование переменной form1 — в общем случае — не есть хорошо.


 
Gydvin ©   (2006-05-17 22:46) [3]

Ну конечно же self, незаметил  ((((


 
Тимофейка   (2006-05-17 22:57) [4]


> Джо

яя пытаюсь раобраться работу с плагинами в приложении...мне нужно чтобы при загрузке плагина создавались кнопки,лебелы и .т.д с соответствующими событиями, как лучше это реализовывать, через dll или bpl ?


 
Kolan ©   (2006-05-17 23:40) [5]

Через COM неплохо. Только азбираться надо....



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

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

Наверх




Память: 0.45 MB
Время: 0.046 c
15-1147421427
Der Nechk@ssoff
2006-05-12 12:10
2006.06.04
Нужен файл.Срочно!


3-1144741610
NetBot
2006-04-11 11:46
2006.06.04
Простейший пример IB & Delphi. подключение, запрос, результат.


2-1147683592
Zilog_
2006-05-15 12:59
2006.06.04
Проблема при работе с указателями


15-1146851737
Gero
2006-05-05 21:55
2006.06.04
Adobe Photoshop SDK


3-1144929416
ttt_111
2006-04-13 15:56
2006.06.04
Как сделать поиск в DBgrid?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский