Главная страница
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.47 MB
Время: 0.027 c
14-53190
copyr25
2003-01-31 19:25
2003.02.17
---|Ветка была без названия|---


14-53184
Darthman
2003-01-31 21:35
2003.02.17
Как на WinAPI получить Handle системной баттареи?


1-52978
Артём К
2003-02-10 12:03
2003.02.17
Метод OnSelect для ListBox


1-52956
Alniko
2003-02-08 16:06
2003.02.17
Работа с ListView


1-52835
Vitus
2003-02-06 11:32
2003.02.17
Free формы???