Вниз
Скачать: 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
15-1233117545
Slider007
2009-01-28 07:39
2009.03.29
С днем рождения ! 28 января 2009 среда


15-1232826548
Ramon
2009-01-24 22:49
2009.03.29
Пример использования Hyper Threading


15-1232538663
Сергей М.
2009-01-21 14:51
2009.03.29
AOL ICQ - очередная засада


2-1233786340
Dmitry87
2009-02-05 01:25
2009.03.29
Обработка большого кол-ва строк


2-1233959281
GrieVeR-13
2009-02-07 01:28
2009.03.29
Цвета элементов на форме




   Наверх