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

Вниз

Форму в компонент   Найти похожие ветки 

 
Dimmu Borgir ©   (2004-01-04 14:05) [0]

Здраствуите.
Как в свой компонент запихать уже готовую форму?


 
Dimmu Borgir ©   (2004-01-04 16:04) [1]

Дополняю вопрос:
При нажатий на кнопку(компонент), вылезает форма содержащаяся в этом компоненте.


 
alless ©   (2004-01-04 16:13) [2]

var a:TForm;

procedure MyButtonClick(Sender:TObject)
begin
a:=TForm.Create(Self);
a.parent:=Form1;
a.top:=20;
a.Left:=20;
end;
ia tak poneal?


 
Dimmu Borgir ©   (2004-01-04 16:46) [3]

Дело в том что форму создавать не надо , ее надо просто запихать в компонент кнопки.Нажимаеш на кнопку компонент и появляется форма со всеми вещами на ней.
Проблема в том что при созданий компонента не получается создать
в нем форму(как в проекте).
Это как form1.ShowModal только из компонента.


 
Sandman25 ©   (2004-01-04 17:02) [4]

with TForm1.Create(nil) do
try
ShowModal;
finally
Free;
end;


 
alless ©   (2004-01-04 17:09) [5]

scaji dlea cego tebe ato forma?
vse cto na nei (kunopki, DBgrid-i, ...) mojno sozdovati dinamiceski.


 
Dimmu Borgir ©   (2004-01-04 23:23) [6]

Я сделал курсовик по Шифрованию данных в простой форме.
Препод сказал что курсач пишется по компоненту,
вот я и решил просто запихать сделанную форму в компонент.
Создавать все динамически у меня нет желания и времени т.к там около 20ти компонентов и код в 300 строк.

to Sandman25: форма должна открыватся не Create"ом ,а своя(заготовка).

Подскажите есть ли еще какой нибудь выход кроме создания всего динамически.


 
pasha ©   (2004-01-05 00:29) [7]

Доброй ночи Dimmu Borgir

type
TMyComp = class (TComponent)
private
public
procedure Execute;
published
end;
procedure Register;

implementation

function TMdListDialog.Execute: Boolean;
var
MyForm: TMyForm;
begin
MyForm := TMyForm.Create (nil);
try
ListBoxForm.ShowModal;
finally
MyForm.Free;
end;
end;

procedure Register;
begin
RegisterComponents("Comps", [TMyComp]);
end;

end

Если надо коментарии то дам их. А вообще книжки читать надо.
Удачи.


 
pasha ©   (2004-01-05 00:33) [8]

Доброй ночи Dimmu Borgir.
Извини но допустил ошибки в коде

procedure TMyComp.Execute;
var
MyForm: TMyForm;
begin
MyForm := TMyForm.Create (nil);
try
MyForm.ShowModal;
finally
MyForm.Free;
end;
end;

Копировал со своего компонента
А насчет кнопки
в обработчике OnClick
MyComp.Execute;
Удачи.


 
Zergling ©   (2004-01-05 07:35) [9]

А если хранить форму, как ресурс компонента? Ну, как TImage хранит в себе графический растр. Записать/считать некую форму из потока? Может это подойдет.


 
Sandman25 ©   (2004-01-05 10:38) [10]

[6] Dimmu Borgir © (04.01.04 23:23)

ф орма должна открыватся не Create"ом ,а своя(заготовка).

Ну и в чем проблема? Там же не TForm создается, а ВАША форма, c автоматическим созданием всех компонентов и обработчиков, которые Вы на нее в design-time накидали.



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

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

Наверх




Память: 0.49 MB
Время: 0.037 c
1-49589
sVic
2004-01-05 14:05
2004.01.16
Не выгонять лист после печати


1-49553
Zeus_Chess
2004-01-06 10:19
2004.01.16
ПАТЧЕВАНИЕ


1-49638
Brut
2004-01-04 14:54
2004.01.16
Как использовать типы и классы в различных модулях.


1-49511
Олег С.
2003-12-23 14:48
2004.01.16
Меню как в Delphi (Bar с меню, подвижный, съемный)


1-49564
Gnom
2004-01-05 23:14
2004.01.16
Записать в файл