Главная страница
    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.56 MB
Время: 0.03 c
4-25127
strong
2002-11-16 14:01
2003.01.09
аля DirectSkin


14-25049
Jackson
2002-12-12 21:17
2003.01.09
Задачи на Паскаль


1-24908
NAN
2002-12-25 07:48
2003.01.09
Вопрос про сообщение NAN?


7-25100
BOOMER
2002-10-25 13:05
2003.01.09
Services


1-24915
alvin
2002-12-24 07:28
2003.01.09
Skin





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский