![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
А что если метод в секцию Published ?
Демонов Е.В. © (2002-09-10 16:29:00)Вот сижу на работе и читаю статейку про создание компонент - и вдркг идея, а что если засунуть метод в секцию Published - будет что нибудь - или будет считаться что метод описан как Public
P.S. Delphi под рукой нет - поэтому и вопрос такой глупый.
Старый Паскалист (2002-09-10 17:37:00) [1]То есть, например, в рантайме у могу получить просто список всех опубликованных методов.
А как из него выбрать нужные - не знаю.
Ученик (2002-09-10 17:36:00) [2]>Старый Паскалист (10.09.02 17:34)
Вы же уже ответили "...(напр., из анализа исходников)". :-)
Старый Паскалист (2002-09-10 17:34:00) [3]Ученик © (10.09.02 17:32)
>Старый Паскалист (10.09.02 17:22)
IDesigner.GetMethods(TypeData: PTypeData; Proc: TGetStrProc); - не то ?
Да это я знаю. Мне и интересно, откуда дизайнер берёт эту информацию. В таблицах РТТИ ну ничегошеньки похожего нет.
Ученик (2002-09-10 17:32:00) [4]>Старый Паскалист (10.09.02 17:22)
IDesigner.GetMethods(TypeData: PTypeData; Proc: TGetStrProc); - не то ?
Демонов Е.В. (2002-09-10 17:26:00) [5]Надеюсь, Когда Нибудь пойму о чём вы
Старый Паскалист (2002-09-10 17:22:00) [6]2Ученик ©
Естественно.
Я хотел что сказать:
Возьмём к примеру, класс
TSomeObject = class(TPersistent)
...
published
property OnChange: TNotifyEvent read ... write ...;
procedure ChangeStyle(Sender: TObject);
end;
Так вот, из РТТИ можно извлечь, какие параметры нужны для
св-ва "OnChange".
А вот какие параметры у метода ChangeStyle - нельзя.
Может, в design-time"е есть дополнителтная информация
(напр., из анализа исходников).
Ученик (2002-09-10 17:10:00) [7]>Старый Паскалист (10.09.02 16:53)
Скорее всего подходящие по списку параметров, если я правильно Вас понял
Старый Паскалист (2002-09-10 16:53:00) [8]published методы используются средой для назначения обработчиков событий.
Соответственно все автоматически создаваемые методы - published.
ОбъектИнспектор выбирает из них список подходящих для каждого события.
(Правда как он это делает, я так и не понял.
Сигнатура метода, который требуется для обработчика событий,
в РТТИ хранится, а сигнатуры самих опубликованных методов - нет)
Демонов Е.В. (2002-09-10 16:44:00) [9]>>Anatoly Podgoretsky
У меня просто возник такой вопрос - а что если ?
А кем бы я был если ... не задовал таких вопросов - наверно ели ели комп мог бы включить
Старый Паскалист (2002-09-10 16:41:00) [10]В объект инспекторе он, конечно, не появится, но
будет доступен через РТТИ (ф-я MethodAddress)
Anatoly Podgoretsky (2002-09-10 16:41:00) [11]Будет, но зачем это же интеренсно для свойств, а для метода нет смысла - он мало юудет отличаться от Public
Демонов Е.В. (2002-09-10 16:36:00) [12]Как Это ?- Метод и published - хочу домой к соей delphi проверить
Ученик (2002-09-10 16:32:00) [13]Будет считаться как published