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

Вниз

перекрытие Create   Найти похожие ветки 

 
San1   (2008-03-22 17:39) [0]

Добрый день! Подскажите пожалуйста.

Мне необходимо наследовать класс TnewGC от TGraphicControl.

При этом в порожденном классе, нужно перекрыть его конструктор.

В конструкторе мне необходимо сначало создасть объект TScrollBox, а уже в него поместить мой компонент класса TnewGC (как матрешка).

Делаю следующее...

Constructor TnewGC.Create(AOwner: TComponent);
begin

 FScrollBox:=TScrollBox.Create(Aowner);
 FScrollBox.Parent:=AOwner as TWinControl;
 FScrollBox.Width:=100;
 FScrollBox.Height:=100;

 Inherited Create(FScrollBox);

 Top:=0;
 Left:=0;
end;

В результате получается, что каждый компонент принадлежит компоненту AOwner...


 
{RASkov} ©   (2008-03-22 17:50) [1]

> [0] San1   (22.03.08 17:39)

Ты бы лучше наоборот... графконтрол помещай в винконтрол)


 
San1   (2008-03-22 17:55) [2]

Так я вроде бы так и делаю..? или я что-то недопонимаю


 
{RASkov} ©   (2008-03-22 17:58) [3]

> [2] San1   (22.03.08 17:55)

Тыж скролбокс создаешь в графконтроле(т.е. в его конструкторе)...
Наследуй свой новый компонент от TScrollBox(или его предка) а уже в его конструкторе и создавай графконтрол, парентом которого и будет твой компонент(т.е. self)...


 
{RASkov} ©   (2008-03-22 18:02) [4]

Мда...
http://delphimaster.net/view/2-1205248970/
Вы чтож все забывчивые такие.... памяти на полмесяца даже не хватило :(
Или это твой однониковец был?


 
San1   (2008-03-22 18:02) [5]

Да, так как Вы говорите работает, но я решил попробовать такой вариант, чтобы мне не переопределять свойства-события графконтрола в наследнике скролбокса.

Т. е., такой путь нельзя реализовать?


 
San1   (2008-03-22 18:06) [6]

>Или это твой однониковец был?
Нет, это я самый... грызу гранит создания компонентов.


 
{RASkov} ©   (2008-03-22 18:25) [7]

> [5] San1   (22.03.08 18:02)
> чтобы мне не переопределять свойства-события графконтрола
> в наследнике скролбокса.

Что бы этого не делать, тебе нужно написать тогда свой полностью компонент, а не лепить его из нескольких чужих....
Вот тебе советы:
 научись понимать различие винконтролов от остальных, например графических(т.е. TGraphicControl)
 купи, и самое главное прочитай, какую нибудь нормальную книжку по созданию компонентов

> [6] San1   (22.03.08 18:06)

Кстати, создание компонентов - это не тоже самое что и писать обычные программы. Занятие созданием компонентов намного увлекательнее и полезнее.
Но в тоже время и "бесполезное" занятие. Так как, компонентов уже написано вагон и маленькая тележка) Но для саморазвития - самое то. Поверь.


 
{RASkov} ©   (2008-03-22 18:32) [8]

Вот еще - кстати:
Кстати, делфийский класс и компонет с палитры выглядят почти одинаково, но на самом деле это не совсем так.... Будучи рабочий класс, т.е. создается и работает в рантайм нормально, переоформлен и помещен в палитру уже как компонент, начинает вести себя совсем по другому :)
ЗЫЖ Это просто хинт небольшой, так для памятки....



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
15-1204791647
DiamondShark
2008-03-06 11:20
2008.04.20
Ура! Это всё-таки случилось.


2-1206211049
Viktor
2008-03-22 21:37
2008.04.20
Как создать отчёт из 2-х таблиц в Quick Reports?


2-1206529642
Renat
2008-03-26 14:07
2008.04.20
Как построить диаграмму на основе данных из БД?


15-1204560445
Kolan
2008-03-03 19:07
2008.04.20
Подскажите генератор отчетов, умеющий создавать rtf?


9-1168767810
GamerProg
2007-01-14 12:43
2008.04.20
Проффи программист разработчик игр