Вниз
Скачать: CL | DM;

Создание двух визуальных компонентов в дизайн-тайм.   Найти похожие ветки 

← →
BKV   (2002-06-18 16:35) [0]

Такая ситуация:
Создаю компонент на форме в дизайн-тайм
Описание компонента:
ТMyComp=class(tbutton)
private
Mylabel:Tlabel;
public
constructor Create;override;
end;

constructor Create(AOwner: TComponent);
begin
inherited create(AOwner);
myLabel:=Tlabel.Create(AOwner);
end;
Регистрирую компонент в VCL и кидаю его на форму.
Созданная кнопка появляется на форме, а описанная в ней метка
нет. Т.к значение parent ей не присваивается.
ПОМОГИТЕ! Что делать?


← →
Игорь Шевченко ©   (2002-06-18 16:45) [1]

У label должен быть parent установлен, чтобы она знала, где ей рисоваться.


> Что делать?


Очевидно, parent Label"у присваивать. В перекрытом методе CreateWnd этого компонента.


← →
BKV   (2002-06-18 17:12) [2]

Delphi присваивает значение parent компонента
после выполнения конструктора этого компонента.
И компоненты, которые создаются внутри его конструктора не
могут получить доступ к parent.


← →
vuk ©   (2002-06-18 17:19) [3]

Перекрыть SetParent (это все равно так или иначе придется делать). Если у Вас D6 можете попробовать использовать Internal component (см. TLabeledEdit).


← →
Игорь Шевченко ©   (2002-06-18 17:20) [4]

Получить доступ они могут всегда.
На CreateWnd сказать MyLabel.Parent := Self не получается ?


← →
BKV   (2002-06-18 18:10) [5]

Попробовал перекрыть метод Setparent-работает нормально,
но после закрытия приложения выдает ошибку.
Попробовал перекрыть метод CreateWnd-все отлично!
СПАСИБО!


← →
Fiend ©   (2002-06-18 18:12) [6]

дык надо деструктор еще перекрыть, и уничтожить сначала дочерний объект а потом владельца



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
1-940
Torrrero
2002-06-19 07:26
2002.07.01
Как зарегестрировать за своей программой новый тип файлов


1-1091
Я_Чайник
2002-06-19 13:02
2002.07.01
Как попасть в UBFPD


1-1055
IronHawk
2002-06-08 19:46
2002.07.01
Проиветствую Мастеров! С печатью разобраться надо помочь ....


3-916
Abu
2002-06-05 16:12
2002.07.01
Ошибка если в look-up-поле


14-1189
Independence
2002-05-31 11:18
2002.07.01
Подскажите, как перекомпиллировать библиотеку?




   Наверх