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

Вниз

Создание компонент   Найти похожие ветки 

 
vbazik   (2002-02-26 00:56) [0]

Подскажите как в виде компонента создать объект из Tscrollbox на котором содержится 2 Timage. У меня уже клин.. Вот часть кода. Если можно поправьте

uses extCtrls,Classes,graphics,forms,controls;

type
Tmy_class = class(tGraphicControl)
private
{}
public
sc:tscrollbox;
im1,im2:timage;
constructor Create(aowner:tcomponent); override ;
end;
procedure register;
implementation

constructor tmy_class.create(aowner:tcomponent);
begin
inherited create(aowner);
sc:=tscrollbox.Create(self);
im2:=timage.Create(self);
..
end;

procedure register;
begin
registercomponents("my",[Tmy_class]);
end;
end.

Бяда заключается в том что после размещения на форме и использовании к примеру
My_class1.im2.loadfromfile(‘1.bmp’);
картинка на форме не появляется. Подскажите - в чем я не прав.
Спасибо


 
MBo ©   (2002-02-26 07:55) [1]

самое важное - чтобы объект ОТОБРАЖАЛСЯ, у него должен быть Parent
sc:=tscrollbox.Create(self);
sc.parent:=Self;
...
im2:=timage.Create(self);
im2.parent:=sc;//вероятно

А так как Parent - TWinControl, то и TMYCLASS должен быть его потомком, а не от TGRaphicControl
Скорее всего, надо его наследовать от TCustomControl


 
CyberStorm ©   (2002-02-26 08:46) [2]

MBo верно говорит, добавлю только одно:
При создании компонента в параметре конструктора Create передается указатель на его владельца т.е. так
...
im2:=timage.Create(sc);
im2.parent:=sc; указывать отдельно не обязательно


 
MBo ©   (2002-02-26 09:27) [3]

>>im2.parent:=sc; указывать отдельно не обязательно
как же так? Owner и Parent - две большие разницы.
Qwner вызовет Free для своих вассалов, но канву-то он не предоставит, и пока не указан Parent (присвоением или InsertControl), im2 будет невидим


 
Sasha9 ©   (2002-02-26 11:31) [4]

а не лучше ли сделать твой класс потомком TScrollBox а не TGraphicControl?


 
CyberStorm ©   (2002-02-26 12:01) [5]

To MBo:
глючу я после ночи за компом... :-)конечно же, ему нужно чтобы у TImage был родитель для отображения на его канве... пардон...


 
vbazik   (2002-03-01 00:17) [6]

Всем спасибо! И МВо в особенности! Все О.К. ;))))))



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

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

Наверх




Память: 0.47 MB
Время: 0.013 c
3-42974
Malder
2002-02-16 12:37
2002.03.14
Управление доступом к базе данных...


1-43017
URSUS
2002-02-27 06:48
2002.03.14
Помогите пожалуйста c компонентом QuickReport !


7-43207
Maxik aka Musicmax
2001-12-10 21:56
2002.03.14
В 98, 95 винде есть mpr.dll к которой можно обратиться функцией WNetEnumCachedPasswords, если знаете подскажите есть ли аналогичные длл в WinXP, Win2000, и если есть то как называются и какими функциями к ним обратиться!


3-42956
Duce
2002-02-14 12:37
2002.03.14
Как красиво исполнить INSERT?


1-42990
tovSuhov
2002-02-28 11:05
2002.03.14
TChart : паразитные значения...