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

component   Найти похожие ветки 

← →
race1 ©   (2002-12-27 15:40) [0]

я пишу компонент и мне при его создании нужно ещё один компонент скреатить (лабел). делаю так:

constructor TTextShape.Create(AOwner: TComponent);
begin
lbl:=TLabel.Create(AOwner);
lbl.Parent:=Parent;
lbl.Left:=Left;
lbl.Top:=Top;
lbl.Caption:="qwer";
inherited Create(AOwner)
end;

а почему-то qwer не вижу на компоненте


← →
MBo ©   (2002-12-27 15:44) [1]

inherited Create(AOwner);
lbl:=TLabel.Create(Self);
lbl.Parent:=Self???;//чей наследник TTextShape?????
lbl.Left:=0;
lbl.Top:=0;


← →
Skier ©   (2002-12-27 15:46) [2]

>race1
А потому что lbl.Parent:=Parent;это на самом деле lbl.Parent:=nil; т.к. в конструкторе родителя ещё нет (=nil)
перекрой метод SetParent у TTextShape и там устанавливай родителя
для lbl...





← →
Roma ©   (2002-12-27 15:46) [3]

race1 © (27.12.02 15:40)

А потому что его там нет...

Конструктор предка (inherited Create) нужно вызывать в первой строке, а не в последней... И не inherited Create(AOwner), а inherited Create( Self)... И Parent := Self... Лэйбл же должен принадлежать твоему компоненту и лежать на твоем компоненте, а не где-то еще...


← →
Skier ©   (2002-12-27 15:48) [4]

>MBo
TTextShape = class(TShape)
Насколько я помню...


← →
MBo ©   (2002-12-27 16:08) [5]

>TTextShape = class(TShape)
Тогда Self Parent-ом быть не может - нужен WinControl.
Если SetParent перекрывать, то это будет AParent.

А вообще, IMHO, нелепо на TGraphicControl Label привешивать. Добавить строковое свойство да и рисовать этот текст в Paint.


← →
Skier ©   (2002-12-27 16:13) [6]

>MBo

> А вообще, IMHO, нелепо на TGraphicControl Label привешивать.
> Добавить строковое свойство да и рисовать этот текст в Paint.

Полностью согласен...и без извращений...


← →
race1 ©   (2002-12-28 07:27) [7]

всем спасибо, перекрыл setparent.

а как передвигать лэйбл во время передвижения шейпа в десигн тайм?

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



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

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



Память: 0.46 MB
Время: 0.01 c
1-24873
Supreme
2002-12-26 13:12
2003.01.09
Загрузка файла в бинарном виде


14-25013
zzet
2002-12-19 00:57
2003.01.09
Спам - это божья кара за наши к нему молитвы.


1-24856
Vlad
2002-12-27 21:07
2003.01.09
Как можно


8-24983
Clinch
2002-09-23 12:29
2003.01.09
Печать Canvas c Bitmap-ом


1-24851
Gerda
2002-12-26 23:03
2003.01.09
Ресурсы




   Наверх