Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.08.29;
Скачать: CL | DM;

Вниз

Создание объектов во время работы программы !!!   Найти похожие ветки 

 
Mr ©   (2002-08-19 10:52) [0]

procedure TForm1.Button1Click(Sender: TObject);
var x:TEDit;
begin
x:=TEdit.create(self);
x.parent:=form1;
x.left:=10;
x.top:=10;
x.Width:=250;
x.Text:="Привет компонент появился сам!!!";
end;
- создает текстовое поле при нажатии на кнопку !!! Все ясно и понятно, а как теперь задать реакцию на событие(мне надо OnClick и OnMouseMove)для нового объекта, который не существовал до запуска программы!!!!

Заранее благодарю !!! И большое спасибо за помощь !!!


 
Turalyon ©   (2002-08-19 10:59) [1]

Пишеше процедуру отдельную....
procedure OnMyEditClick (Sender : TObject);

.....

procedure TForm1.Button1Click(Sender: TObject);
var x:TEDit;
begin
x:=TEdit.create(self);
x.parent:=form1;
x.left:=10;
x.top:=10;
x.Width:=250;
x.Text:="Привет компонент появился сам!!!";
x.OnClick := OnMyEditClick;
end;



 
Anatoly Podgoretsky ©   (2002-08-19 11:26) [2]

Не пиши отдельную процедуру, все равно побругает, нужна процелура метод класса


 
Mr ©   (2002-08-19 12:12) [3]

unit Unit1;

interface

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

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

var
Form1: TForm1;
x:TEdit;
implementation

{$R *.dfm}

procedure OnEC(Sender : TObject);
begin
x.Text:="!!!!!!!!!!!!!";
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
x:=TEdit.create(self);
x.parent:=form1;
x.left:=10;
x.top:=10;
x.Width:=250;
x.Text:="Привет компонент появился сам!!!";
x.OnClick:=OnEC;
end;

end.


Он очень громко ругается и пишет:
[Error] Unit1.pas(39): Incompatible types: "method pointer and regular procedure"



 
Skier ©   (2002-08-19 12:23) [4]

>Mr


unit Unit1;

interface

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

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

var
Form1: TForm1;
x:TEdit;
implementation

{$R *.dfm}

procedure TForm1.OnEC(Sender : TObject);
begin
x.Text:="!!!!!!!!!!!!!";
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
x:=TEdit.create(self);
x.parent:=form1;
x.left:=10;
x.top:=10;
x.Width:=250;
x.Text:="Привет компонент появился сам!!!";
x.OnClick:=OnEC;
end;

end.


 
Mr ©   (2002-08-19 12:32) [5]

Огромное спасибо всем!!!!!!! Учту, исправлю, буду стараться !!! :)


 
KSergey ©   (2002-08-19 13:00) [6]

http://delphi.vitpc.com/helloworld/index.htm
Статья "Жизнь и смерть в режиме run-time" - там есть ответы на все ваши вопросы



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

Текущий архив: 2002.08.29;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.01 c
1-95735
Kif
2002-08-16 20:09
2002.08.29
Есть вопрос...


4-96024
v0id
2002-06-25 22:04
2002.08.29
Внедрение DLL


3-95651
SlavaK
2002-08-07 18:11
2002.08.29
Delphi-SQLServer


3-95692
Anatoliy
2002-08-08 15:29
2002.08.29
Сообщения через ODBC


1-95845
VID
2002-08-17 16:10
2002.08.29
Как реализовать подсветку заднего фона строки (RichEdit) ?