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

Вниз

Передача параметра   Найти похожие ветки 

 
Антон1209   (2006-02-03 10:31) [0]

constructor TAuditItem.Create(AOwner: TComponent; AName, ACaption: string);
begin
 inherited Create(AOwner);
 Name:=AName;
 Caption:=ACaption;
 OnClick:=ShowAuditWindow(AOwner);
end;

procedure TAuditItem.ShowAuditWindow(Sender : TObject);

хочу передать AOwner в процедуру ShowAuditWindow возникает ошибка, не могу понять почему, помогите.

[Error] ViewSimple.pas(717): Incompatible types: "TNotifyEvent" and "procedure, untyped pointer or untyped parameter"


 
Digitman ©   (2006-02-03 10:35) [1]

Не понятно, с какой стати источником события (Sender) должен быть некий заранее не известный владелец компонента TAuditItem, если он, компонент TAuditItem, как раз сам и является источником события ?


 
Антон1209   (2006-02-03 10:43) [2]

Да понял, а как тогда мне лучше передать владельца компонента TAuditItem в процедуру ShowAuditWindow?


 
Digitman ©   (2006-02-03 10:49) [3]


> Да понял


Ну где же понял-то ?!

Зачем передавать владельца , если в Sender впри вызове обработчика предназначен для указания компонента-источника (!) события (источник у тебя TAuditItem), а не компонента-владельца, коего в общем случае у компонента TAuditItem может и не быть ?

constructor TAuditItem.Create(AOwner: TComponent; AName, ACaption: string);
begin
..
OnClick:=ShowAuditWindow;
end;

И все !
И ничего выдумывать не надо !

Когда произойдет событие TAuditItem.OnClick, будет вызван метод  TAuditItem.ShowAuditWindow со значением переданного параметра Sender, соответствующим ссылке на конкретный компонент TAuditItem, который "кликнули"


 
evvcom ©   (2006-02-03 10:51) [4]

А ты его косвенно и так передаешь:
OnClick:=ShowAuditWindow;
...
procedure TAuditItem.ShowAuditWindow(Sender : TObject);
begin
 TComponent(Sender).Owner // это и есть твой владелец


 
Антон1209   (2006-02-03 10:57) [5]

все это и нужно было спасибо :-)



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

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

Наверх




Память: 0.47 MB
Время: 0.025 c
9-1125469441
UnReg_ToXic_Clone
2005-08-31 10:24
2006.02.19
Скелеты и вертексы


2-1138617068
box
2006-01-30 13:31
2006.02.19
Связь адотабле и адоКвери


1-1137765464
Pavel__
2006-01-20 16:57
2006.02.19
Определение фиксированного шрифта, медленно работает


15-1138250776
begin...end
2006-01-26 07:46
2006.02.19
С Днём рождения! 26 января


2-1138968917
~ShamaN~
2006-02-03 15:15
2006.02.19
Перемещение курсора в DateTimePicker