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

Вниз

Где тело процедуры объявленной след. образом:   Найти похожие ветки 

 
Комбинатор   (2004-07-19 15:43) [0]

......
У меня в модуле (не мной написанном) объявлено следующее:

property OnError : TScriptErrorEvent read FOnError write FOnError;
.......................................................
FOnError : TScriptErrorEvent;
.......................................................
TScriptErrorEvent = procedure (Stmt : TScriptStatement; Error : Exception) of object;
........................................................

Мне требуется свойство OnError, но немогу его определить.
Объясните пожалуйста как и где описано тело процедуры;

Предположил сначало , что надо самому его писать (что мне самому удобно) и потом передавать модулю, но как это сделать (передать) не знаю.


 
Smithson ©   (2004-07-19 15:47) [1]

Процедура, реализующая это свойство, должна быть присвоена полю FOnError. Соответственно, ищещь FOnError := ...


 
Комбинатор   (2004-07-19 15:54) [2]

в этом модуле FOnError := ... нет, есть только вызов
FOnError(Stmt,E); (входные параметры соответствующих типов).
У меня есть доступ к свойству OnError из моей программы,
и мне надо достать от туда Exception.


 
Комбинатор   (2004-07-19 15:57) [3]

и ещё что значит TScriptErrorEvent = procedure (Stmt : TScriptStatement; Error : Exception) of object;
Какого объекта?


 
clickmaker ©   (2004-07-19 16:00) [4]


> Комбинатор   (19.07.04 15:57) [3]

Это значит, что процедура должна быть членом класса


 
Anatoly Podgoretsky ©   (2004-07-19 16:04) [5]

Комбинатор   (19.07.04 15:54) [2]
Таких может быть много, в том числе и 0


 
Комбинатор   (2004-07-19 16:21) [6]

Podgoretsky :))

И всё же:
У меня есть доступ к свойству Tobj.OnError (свойство типа TScriptErrorEvent , т.е. процедура).
Мне надо ему присвоить точку входа своей процедуры.
Но на  Obj.OnError:=MyProc(..) пишет:
[Error] : Incompatible types: method pointer and regular procedure
 
Почему?


 
Digitman ©   (2004-07-19 16:28) [7]


> Комбинатор   (19.07.04 16:21) [6]


> Почему?


потому что MyProc(..) должна быть процедурным методом класса (1), а не обычной процедурой (2)... ты разницу между (1) и (2) хоть сколь-либо ощущаешь ?


 
Комбинатор   (2004-07-19 16:29) [8]

Всё сделал....



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

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

Наверх




Память: 0.46 MB
Время: 0.033 c
14-1089823715
VID
2004-07-14 20:48
2004.08.01
Совместное использование ресурсов компьютера в сети. Как ?


6-1085932270
Sn
2004-05-30 19:51
2004.08.01
Немогу принять ответ сервера UDP


1-1089991635
ko
2004-07-16 19:27
2004.08.01
color


1-1090232022
Murad
2004-07-19 14:13
2004.08.01
ActionList


1-1089879538
half_litre
2004-07-15 12:18
2004.08.01
NoModalForm в Dll и Exception





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский