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

Интерфейсы и события...   Найти похожие ветки 

← →
Knight ©   (2009-01-30 08:49) [0]

Можно ли реализовать сабж?
Делаю так. Где "косяк"?

type
 IFoo=interface

 TonSomeEvent=procedure(Foo:IFoo; X,Y:Byte);

 IFoo=interface
   function GetOnFoo:IFoo;
   procedure SetOnFoo(const Value:IFoo);

   property onFoo:TonSomeEvent read GetOnFoo write SetOnFool;
 end;
 ---

 TFoo=class(TInterfacedObject,IFoo)
 .....
 end;

 ---
 TSomeClass=class()
   FFoo:IFoo;
 ...
   procedure onSomeEvent(Foo:IFoo; X,Y:Byte);
   property Foo:IFoo read FFoo write SetFoo;
 ---

 procedure TSomeClass.SetFoo(const Value:IFoo)  
   FFoo=Value;
   FFoo.onSomeEvent=onSomeEvent;

< [Pascal Error] SomeUnit.pas(49): E2009 Incompatible types: "regular procedure and method pointer"

 end;


← →
{RASkov} ©   (2009-01-30 09:03) [1]

> TonSomeEvent=procedure(Foo:IFoo; X,Y:Byte);

TonSomeEvent=procedure(Foo:IFoo; X,Y:Byte) of Object;?


← →
Knight ©   (2009-01-30 09:07) [2]


> [1] {RASkov} ©   (30.01.09 09:03)

ТОЧНО!!! Забыл :))))

Спасибо. Вопрос исчерпан %)



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

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



Память: 0.45 MB
Время: 0.017 c
2-1233804054
snake-as
2009-02-05 06:20
2009.03.29
При открытии файла через OpenDialog имя файла не сохраняется


15-1233294554
Knight
2009-01-30 08:49
2009.03.29
Интерфейсы и события...


4-1207237164
Stan
2008-04-03 19:39
2009.03.29
Mapped файл


2-1233826733
Pavel
2009-02-05 12:38
2009.03.29
Подключение к базе через ini-файл


9-1178217912
NDF
2007-05-03 22:45
2009.03.29
Помогите с DelphiX




   Наверх