Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.11.13;
Скачать: CL | DM;

Вниз

Классы   Найти похожие ветки 

 
qwe   (2003-10-30 17:59) [0]

type
TMyForm = class(TForm);

TFormClass = class of TForm;

Что означает последняя строка


 
Digitman ©   (2003-10-30 18:03) [1]

ссылка на описание класса (не путать со ссылкой на объект ранее описанного класса)


 
qwe   (2003-10-30 18:09) [2]

А почитать про это дело где нибудь можно кроме F1 порекомендуйте


 
Digitman ©   (2003-10-30 18:12) [3]


> qwe


затрудняюсб сказать, где это лучше и наглядней всего описано ...

вероятно, <Юрий Зотов> подскажет наиболее хорошие ссылки


 
Palladin ©   (2003-10-31 01:44) [4]

Вот сдесь немного http://www.rsdn.ru/article/Delphi/delphiabs.xml но суть поймешь.
В инете мало написано про виртуальные конструкторы.


 
Юрий Зотов ©   (2003-10-31 07:16) [5]

> qwe

Лучшее, что я встречал на эту тему - это книга Рэя Конопки "Разработка оригинальных компонент в среде Delphi". Попробуйте найти (говорят, она еще продается в Киеве), не пожалеете. Вообще, рекомендую эту книгу всем, кто хочет действительно ПОНЯТЬ, что такое Delphi и VCL и почему VCL устроена именно так, а не иначе.

Вообще, ищите информацию в Сети по ключевым словам:
- Delphi
- виртуальные конструкторы
- метаклассы.

Кратко, TFormClass - это так назывваемый метакласс и означает "класс TForm или любой его потомок". Заметьте - не "ОБЪЕКТ класса TForm или любого его потомка", а именно сам КЛАСС. То есть, если КЛАСС обобщает семейство ОБЪЕКТОВ, то МЕТАКЛАСС обобщает семейство КЛАССОВ.

Посмотрите в модуле Classes, как коллекция (TColection) создает свои элементы - через метакласс TCollectionItemClass. То есть, коллекция умеет создавать не только элементы конкретного класса TCollectionItem, но и любого ПОТОМКА этого класса. Что дает нам возможность создавать свои коллекции с ЛЮБЫМИ элементами.

Аналогично Grid создает свои колонки, а ListView - свои Item"ы. Посмотрите, как сделан метод TApplication.CreateForm - то же самое. И т.д. Это очень мощный и гибкий механизм.



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

Текущий архив: 2003.11.13;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.033 c
1-41475
Unn
2003-10-23 20:14
2003.11.13
куча окошек


1-41439
Vitalik
2003-10-29 13:06
2003.11.13
перегрузка виртуальных функций


3-41091
Vick
2003-10-23 10:16
2003.11.13
TADODataSet.Sort := ....


3-40916
tprkv
2003-10-20 09:02
2003.11.13
Где можно почитать про Oracle желательно на русском


1-41383
Lamer_Of_Delphi
2003-10-30 12:22
2003.11.13
GetLocaleInfo