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

Вниз

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

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

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

Наверх





Память: 0.45 MB
Время: 0.012 c
6-1120
Chuvi
2002-04-19 11:00
2002.07.01
Как после копирования файлов по сети отключиться от компьютера ?


1-1031
Poirot
2002-06-18 12:36
2002.07.01
Как имя компонента вывести....


4-1256
ZZ
2002-05-01 17:53
2002.07.01
Вызов неизвестной заранее функции


14-1180
VID
2002-05-30 17:55
2002.07.01
Листок заказов на UBPFD.


1-1038
Cranium
2002-06-18 16:40
2002.07.01
Как получить Date separator?





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