|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
02.10.2009, 19:15 | #1 |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
Не рисует наследуемый класс.
Помогите разобраться:
Код:
inherited Create(AOwner); или достаточно просто inherited? 3) Чувствую, там не хватает parent'a... Но не смог найти чему его присвоить из свойств AOwner =\ 1)Из первого юнита создаю объект так: Код:
|
02.10.2009, 19:28 | #2 |
Trust no one.
Старожил
Регистрация: 07.04.2009
Сообщений: 6,526
|
Код:
Код:
SQUARY PROJECT - НАБОР БЕСПЛАТНЫХ ПРОГРАММ ДЛЯ РАБОЧЕГО СТОЛА.
МОЙ БЛОГ GRAY FUR FRAMEWORK - УДОБНАЯ И БЫСТРАЯ РАЗРАБОТКА WINAPI ПРИЛОЖЕНИЙ |
02.10.2009, 21:07 | #3 |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
Ой) Это я когда сюда писал переправлял. Так тож не робит (В том смысле, что я по другому не пробовал)
Добавлено: Parent точно её не надо добавлять? |
02.10.2009, 22:03 | #4 | |
Форумчанин
Регистрация: 06.01.2009
Сообщений: 340
|
Parent конечно нужен, это же визуальный компонент:
Код:
Цитата:
inherited Create(AOwner); так нужно если у предка несколько конструкторов, без этого компилятор не будет знать какой вызвать.
Истинный успех – это то, что Вы сделали в сравнении с тем, что могли бы сделать.
Никогда не бойся делать то, что ты не умеешь. Помни, ковчег был построен любителем. Профессионалы построили "Титаник". |
|
02.10.2009, 22:26 | #5 | |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
Цитата:
А по AOwner можно получить родителя? ведь мы же передаём self - по сути form1. А что бы сделать Parent := Form1; , нужно подключать unit1. |
|
02.10.2009, 23:29 | #6 |
Форумчанин
Регистрация: 06.01.2009
Сообщений: 340
|
Parent и Owner имеют различное назначение.
Parent - это объект-контейнер, который содержит данный объект. Например Parent-ом может быть форма(TForm), панель(TPanel), группбокс(TGroupBox) и другие контейнеры. Визуально - это тот объект, на котором будет расположен твой. Owner - это объект-владелец, он отвечает за уничтожение твоего объекта, когда будет уничтожен сам. Owner можно не назначать, но тогда тебе придется самому уничтожать твой объект. Теперь по коду: Вынеси Parent в параметр конструктора и не будет проблем: Код:
Код:
Код:
Код:
Истинный успех – это то, что Вы сделали в сравнении с тем, что могли бы сделать.
Никогда не бойся делать то, что ты не умеешь. Помни, ковчег был построен любителем. Профессионалы построили "Титаник". |
03.10.2009, 01:08 | #7 |
Участник клуба
Регистрация: 28.07.2009
Сообщений: 1,510
|
Сделал так:
Код:
|
03.10.2009, 11:59 | #8 |
Форумчанин
Регистрация: 06.01.2009
Сообщений: 340
|
Это эквивалентные формы:
Parent := TWinControl(AOwner); Parent := AOwner as TWinControl; Разница в том, что во втором случае дополнительно происходит проверка типов.
Истинный успех – это то, что Вы сделали в сравнении с тем, что могли бы сделать.
Никогда не бойся делать то, что ты не умеешь. Помни, ковчег был построен любителем. Профессионалы построили "Титаник". |
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Паскаль не рисует! | fire_on | Паскаль, Turbo Pascal, PascalABC.NET | 26 | 11.08.2009 18:20 |
Класс | Юлёк | Фриланс | 6 | 15.06.2008 15:00 |
TListView; не рисует цветом TCanvas | JetAPI | Компоненты Delphi | 9 | 24.08.2007 22:22 |