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

Вниз

новый класс на базе чекбокса   Найти похожие ветки 

 
malamba   (2002-07-16 09:28) [0]

Братья по разуму, помогите разобраться!

Создал новый класс на основе CheckBox-a (отличие - в нескольких доп. полях, в которых сохраняю свои данные). Экземпляры класса создаются в run-time. Даю им родителя, размеры, положение и свои данные.
В debug-time для проверки кладу на форму новый компонент и вижу все его новые свойства в Инспекторе объектов.
В run-time ничего не создается. Точнее создается, но поскольку владелец - TComponent, ничего не прорисовывается.
Пробовал указывать владельцем TWinControl - такое впечатление, что в новом классе только мои свойства, а от родительского ничего не передалось. Имя - от формы, на мои имена не реагирует.

Для наглядности - кусочки кода:


type
TCheckBoxGost = class(TCheckBox)
private
FKolStranic: Integer;

protected
procedure SetKolStranic(const Value: Integer);

published
constructor Create(AOwner: TWinControl);
destructor Destroy(AOwner: TWinControl);
property KolStranic: Integer read FKolStranic write SetKolStranic;

****************************************************************
constructor TCheckBoxGost.Create(AOwner: TWinControl);
begin
inherited Create(AOwner) ;
end;


****************************************************************
А вызываю я его так:

MyCheckBoxGost:= TCheckBoxGost.Create(Self);

Где-то явная лажа, но где - не хватает опыта понять...


 
Kaban   (2002-07-16 09:33) [1]

MyCheckBoxGost:= TCheckBoxGost.Create(Self);
MyCheckBoxGost.Parent:=Self;


 
olookin   (2002-07-16 09:36) [2]

Нужно поставить строку:

MyCheckBoxGost.Parent:=Form1 (или self);

После этого у меня все появилось.


 
Eugene Lachinov   (2002-07-16 09:41) [3]

published
constructor Create(AOwner: TWinControl);
destructor Destroy(AOwner: TWinControl);

Это как-то неправильно, хотя в данной реализации несущественно, обычно
public
constructor Create(AOwner: TComponent); override;
destructor Destroy; override;


 
malamba   (2002-07-16 17:28) [4]

Eugene Lachinov-у
знаю, что нужно override;, но у меня эта зараза сообщает, что неопознаваемое слово. Возможно что-то где-то не упомянулось. НО работает и без этого, тем более, что на стандартные методы CheckBoxa я не покушался.

Всем спасибо!
Главная бяка была вот в чем:
была строка
.Parent:=(фрейм, в котором создавались чекбоксы);
Вместо имени фрейма у меня стояла переменная, в которой хранилось это самое имя.
Когда ввел имя напрямую, все мои родненькие повылазили.



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

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

Наверх





Память: 0.56 MB
Время: 0.025 c
14-95515
Raiv
2002-07-02 15:23
2002.07.29
Где можно скачать TeeChartPro VCL для


1-95305
StarCon
2002-07-17 12:27
2002.07.29
XML разбор


3-95250
ioRaptor
2002-07-08 20:39
2002.07.29
Как занести jpeg картинку в blob поле (InterBase)


3-95197
nitro313
2002-07-06 06:18
2002.07.29
Ошибка при запуске базы данных....


14-95533
kull
2002-07-02 23:37
2002.07.29
Почему у Delphi скорость компиляции выше?





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