Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];

Вниз

Как передать в функцию CallBack процедуру?   Найти похожие ветки 

 
still_swamp ©   (2004-04-09 17:48) [0]

type
TMyProc = procedure(i:integer);

Prc: TMyProc;

procedure Prc;
begin
ShowMessage("asd");
end;

SendProc(@Prc); - это хочет параметров не воспринимая @Prc как параметр. Что нужно сделать. Подскажите плс.


 
Smithson ©   (2004-04-09 17:56) [1]

Опиание SendProc покажи


 
still_swamp ©   (2004-04-09 17:57) [2]

function SendProc(AProcCallBack:TMyProc):integer;


 
Тимохов ©   (2004-04-09 18:00) [3]

убрать @

и описать процедуру prc с праметром, также как описана tmyproc


 
Smithson ©   (2004-04-09 18:00) [4]

Сталбыть - SendProc(Prc);


 
still_swamp ©   (2004-04-09 18:06) [5]

компилятор говорит Conversion Differ.
да - маленькое уточнение:
procedure Prc; - эта процедура некого TObject.

нечто вроде
TMyObject = Class (TObject);
procedure Prc:TMyProc;
end;


 
Smithson ©   (2004-04-09 18:08) [6]

А вот так нельзя. Для этого TMyProc необходимо описать как procedure of object.


 
still_swamp ©   (2004-04-09 18:16) [7]

TMyProc = procedure(i:integer) of object;

пробовал.
тогда говорит не совпадает Procedure и untipet pointer

гдя я мог ошибиться.


 
Тимохов ©   (2004-04-09 18:19) [8]

вы ошиблись в одном не прочли раздел хелпа

object pascal reference \ data types \ procedural types


 
still_swamp ©   (2004-04-09 18:22) [9]

TProcSetColor = procedure (ARGBA:TRGBA) of object;

function EditRGBA(.....; AProcSetColor:TProcSetColor): Integer; stdcall external "rgba.dll";

type
 T_FormList = class(TForm)
  function ChangeColorNavigateSphere(ARGBA: TRGBA):integer;

EditRGBA(.... @ChangeColorNavigateSphere);


 
WebErr ©   (2004-04-09 18:25) [10]


> гдя я мог ошибиться.

Везде и ошибся! :)

type
 TSomeMethod = procedure(i: Integer) of object;
 TSomeClass = class(...)
 ...
   SomeMethod: TSomeMethod;
 ...
 end;

 TAnotherClass = class(...)
 ...
   procedure AnotherMethod(i: Integer);
 ...
 end;

...
procedure UseSomeMethod(AMethod: TSomeMethod);
...
 SomeMethod := AnotherMethod;
...
 UseSomeMethod(A.SomeMethod);
...
procedure UseSomeMethod(AMethod: TSomeMethod);
begin

end;
...


 
WebErr ©   (2004-04-09 18:26) [11]


> Тимохов ©   (09.04.04 18:19) [8]

Gy! :))))


 
still_swamp ©   (2004-04-09 18:27) [12]

ок - читаю...


 
still_swamp ©   (2004-04-09 18:36) [13]

бред написал - сам вижу.
звиняйте... :)



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

Форум: "Основная";
Текущий архив: 2004.04.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.47 MB
Время: 0.037 c
1-1081582624
KEBZ
2004-04-10 11:37
2004.04.25
ProgressBar1


3-1080132204
Go3DoN
2004-03-24 15:43
2004.04.25
datasource от сторонних разработчиков?


14-1081178734
Тимур
2004-04-05 19:25
2004.04.25
Flash игры


1-1081319797
Layner
2004-04-07 10:36
2004.04.25
Как избавится от FormMouseDown при FormDblClick


11-1065050375
Sagrer
2003-10-02 03:19
2004.04.25
В исходнике на KOL+MCK сейвятся жесткие пути.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский