![]() |
|
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]()
|
|
| Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: 1 Всего: 6 |
Создаю новый компонент. Вот пример кода.
непонятно, что значит в строке constructor TOurOpenDialog.Create(AOwner: TComponent); слова AOwner: TComponent Можно объяснить простыми словами. На пальцах, так скажем. |
|||
|
||||
| THandle |
|
|||
![]() Хранитель Клуба Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: 50 Всего: 372 |
Teleport, owner - это компонент, которому принадлежит твой компонент. При уничтожении твоего объекта(компонента), он уничтожит все принадлежащие ему компоненты, и отвечает за загрузку установленных во время проектирования свойств для принадлежащих ему компонентов.(брр... одни компоненты. ну как смог после 4 уроков физики так и написал).
Это так называемый владелец компонента. Свойство Owner есть у всех наследников класса TComponent, является read-only свойством и устанавливается при создании компонента, в конструкторе, что и происходит в твоем коде. AOwner и есть владелец... |
|||
|
||||
| Teleport |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 557 Регистрация: 5.7.2008 Где: Прибалтика Репутация: 1 Всего: 6 |
2 THandle - т.е. конструктор только так и может выглядить при создании компонентов? Или это в большинстве случаев?
constructor Create(AOwner: TComponent); override; |
|||
|
||||
| Poseidon |
|
|||
![]() Delphi developer ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 5273 Регистрация: 4.2.2005 Где: Гомель, Беларусь Репутация: 9 Всего: 133 |
-------------------- Если хочешь, что бы что-то работало - используй написанное, если хочешь что-то понять - пиши сам... |
|||
|
||||
| pseud |
|
|||
![]() Экспёрт Тыдыщ ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1175 Регистрация: 18.5.2007 Где: Минск, Беларусь Репутация: 10 Всего: 40 |
а еще можно так:
но AOwner рекомендую оставлять всегда, можно не TComponent, а его любой потомок. если не хочешь туда ничего передавать, то передавай nil, но тогда на тебе повисает ответственность за уничтожение. -------------------- Испытание чужого терпения можно считать успешным, если оно лопнуло... |
|||
|
||||
| THandle |
|
||||||
![]() Хранитель Клуба Награды: 1 Профиль Группа: Админ Сообщений: 3639 Регистрация: 31.7.2007 Где: Moscow, Dubai Репутация: 50 Всего: 372 |
Может быть любым. Главное не забывать вызывать унаследованный обработчик:
Создаем:
|
||||||
|
|||||||
![]()
|
| Правила форума "Delphi: Для новичков" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Для новичков | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |