Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.02.17;
Скачать: CL | DM;

Вниз

Разработка компонента   Найти похожие ветки 

 
Yarmak_Sergey ©   (2003-02-08 13:10) [0]

Уважаемые мастера!!!
Пишу компонент, кот. в себе инкапсулирует несколько визуальных контролов, в том числе TRadioGroup. Предположим назовем этот компонент TTestComponent = class(TCustomControl).

В конструкторе TTestComponent я пишу следующее

constructor TTestComponent.Create(AOwner: TComponent);
begin

FRadioGroup := TRadioGroup.Create(Self);
FRadioGroup.Parent := Selft;
FRadioGroup.Items.Add("First Item");
FRadioGroup.Items.Add("Second Item");
end;

Так вот вопрос, почему когда я перетягиваю контрол с палитры ком понент на форму возникает ошибка с сообщением
"Control has no parent window" ?


 
Романов Р.В. ©   (2003-02-08 13:15) [1]


> FRadioGroup.Parent := Selft;

Наверно не Self, а Self.Parent. Хотя вы лучше должны знать как он должен работать.


 
Palladin ©   (2003-02-08 13:16) [2]

ИМХО

inherited Create(AOwner)
self.parent:=AOwner

в конструкторе попоробуй написать


 
Yarmak_Sergey ©   (2003-02-08 15:10) [3]

Palladin ©

А что на уровне конструктора не определен Parent?
Тогда, когда же определяется Parent для TTestComponent?
И почему если не пишешь строки
FRadioGroup.Items.Add("First Item");
FRadioGroup.Items.Add("Second Item");

то все корректно?


 
Anatoly Podgoretsky ©   (2003-02-08 15:16) [4]

Это ты их должен писать :-)


 
Style   (2003-02-08 23:17) [5]

Зачем использовать TRadioGroup юзай TPanel и кучу RadioButton
а в TRadioGroup глюк
в модуле ExtCtrls
в процедуре ArrangeButtons

строчка DeferWindow если ее удалить то все работает :))


 
Юрий Зотов ©   (2003-02-09 10:18) [6]

Ошибка возникает из-за строк:
FRadioGroup.Items.Add("First Item");
FRadioGroup.Items.Add("Second Item");

Причина - в конструкторе у FRadioGroup еще нет окна.

Заместите метод CreateWnd и перенесите эти строки в него, строго ПОСЛЕ вызова inherited.



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

Текущий архив: 2003.02.17;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.025 c
1-52910
___Nikolay
2003-02-08 16:18
2003.02.17
Что сделать, чтобы работала команда Copy в TWebBrowser-e?


1-52832
Matteus
2003-02-07 12:26
2003.02.17
Функция, которая проверяет, удовлетворяет ли имя файла шаблону


1-53064
PrettyFly
2003-02-06 17:56
2003.02.17
Всплывающая кнопка :)


3-52740
VinRaider
2003-01-30 00:57
2003.02.17
Как програмно узнать установлен ли alias в BDE


1-53072
Tyo
2003-02-06 17:06
2003.02.17
---|Ветка была без названия|---