Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2003.01.09;
Скачать: [xml.tar.bz2];

Вниз

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 вся ветка

Форум: "Основная";
Текущий архив: 2003.01.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.008 c
1-24900
d_oleg
2002-12-25 12:13
2003.01.09
Balloon hint


14-25008
Romkin
2002-12-17 15:12
2003.01.09
Требуется программист :-)))))


3-24816
DmitryB
2002-12-17 08:51
2003.01.09
UDF


14-25078
Anatoly Podgoretsky
2002-12-21 12:19
2003.01.09
Именинники 21 декабря


7-25119
harismatik
2002-10-28 16:32
2003.01.09
изменение иконки приложения





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский