Вниз
Скачать: 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.008 c
4-1252
lukey
2002-04-22 07:34
2002.07.01
Работы с векторной графикой


1-936
Извращенец
2002-06-15 19:38
2002.07.01
ощибка


3-884
DmitryPV
2002-06-07 10:34
2002.07.01
Как поместить маску ввода в ячейку DBGrid?


7-1216
SONY
2002-04-04 06:48
2002.07.01
Как изменить настройки принтера по умолчанию


1-1027
d_oleg
2002-06-18 10:45
2002.07.01
TBitMap - в dll




   Наверх