![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Где тело процедуры объявленной след. образом:
Комбинатор © (2004-07-19 15:43:00)......
У меня в модуле (не мной написанном) объявлено следующее:
property OnError : TScriptErrorEvent read FOnError write FOnError;
.......................................................
FOnError : TScriptErrorEvent;
.......................................................
TScriptErrorEvent = procedure (Stmt : TScriptStatement; Error : Exception) of object;
........................................................
Мне требуется свойство OnError, но немогу его определить.
Объясните пожалуйста как и где описано тело процедуры;
Предположил сначало , что надо самому его писать (что мне самому удобно) и потом передавать модулю, но как это сделать (передать) не знаю.
Комбинатор (2004-07-19 16:29:00) [1]Всё сделал....
Digitman (2004-07-19 16:28:00) [2]
> Комбинатор (19.07.04 16:21) [6]
> Почему?
потому что MyProc(..) должна быть процедурным методом класса (1), а не обычной процедурой (2)... ты разницу между (1) и (2) хоть сколь-либо ощущаешь ?
Комбинатор (2004-07-19 16:21:00) [3]Podgoretsky :))
И всё же:
У меня есть доступ к свойству Tobj.OnError (свойство типа TScriptErrorEvent , т.е. процедура).
Мне надо ему присвоить точку входа своей процедуры.
Но на Obj.OnError:=MyProc(..) пишет:
[Error] : Incompatible types: method pointer and regular procedure
Почему?
Anatoly Podgoretsky (2004-07-19 16:04:00) [4]Комбинатор (19.07.04 15:54) [2]
Таких может быть много, в том числе и 0
clickmaker (2004-07-19 16:00:00) [5]
> Комбинатор (19.07.04 15:57) [3]
Это значит, что процедура должна быть членом класса
Комбинатор (2004-07-19 15:57:00) [6]и ещё что значит TScriptErrorEvent = procedure (Stmt : TScriptStatement; Error : Exception) of object;
Какого объекта?
Комбинатор (2004-07-19 15:54:00) [7]в этом модуле FOnError := ... нет, есть только вызов
FOnError(Stmt,E); (входные параметры соответствующих типов).
У меня есть доступ к свойству OnError из моей программы,
и мне надо достать от туда Exception.
Smithson (2004-07-19 15:47:00) [8]Процедура, реализующая это свойство, должна быть присвоена полю FOnError. Соответственно, ищещь FOnError := ...