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

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

← →
Alibaba ©   (2004-03-21 06:39) [0]

1. Описываю процедуру

procedure MyClick(Sender: TObject)
begin
...
end

2. В Run-Time создаю компонент TButton.
3. Хочу что-бы при клике на TButton выполнялась моя процедура

TButton.OnClick:=MyClick;

Появляется сообщение об ошибке:
Incompatible types: "method pointer and regular procedure"

Если я описываю процедуру в главной форме:

type
 TfrmMain = class(TForm)
 ...
 procedure MyClick(Sender: TObject);
 ...
 end;


Тогда все работает.
Но есть необходимость описать процедуру НЕ в главной форме.
Как это сделать?


← →
uw ©   (2004-03-21 07:52) [1]

property OnClick: TNotifyEvent;
type TNotifyEvent = procedure (Sender: TObject) of object;

Слова of object означают, что мы должны писать не простую процедуру, а метод какого-нибудь класса. Можешь написать так:

type
 TAnuClass = class
   procedure MyClick(Sender: TObject);
 end;

procedure TAnuClass.MyClick(Sender: TObject);
begin
...
end;



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

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



Память: 0.45 MB
Время: 0.026 c
4-1079939092
BillyJeans
2004-03-22 10:04
2004.04.11
WM_HOTKEY и NumLock...


6-1079507178
Layner
2004-03-17 10:06
2004.04.11
Сохраняю файл аттач с помощью TIdPOP3, TIdAttachment


7-1079648951
dim-
2004-03-19 01:29
2004.04.11
Проблема с получением данных с COM порта


14-1081973550
Ломброзо
2004-04-15 00:12
2004.04.11
А хто пишет "Хокку для души"??


7-1079525450
DuchmanSoft
2004-03-17 15:10
2004.04.11
Мою программу закрывает другая программа




   Наверх