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

Вниз

Как в run-time создать форму с кнопочками   Найти похожие ветки 

 
чяс   (2005-05-23 22:17) [0]

Нашел статью Жизнь и смерт в Run-time
Создавать всё получается а чтобы что-нибудь при нажатии кнопки происходило тоже получается.
А вот создать форму а на ней кнопку чтобы что-нибудь при нажатии кнопки на созданной форме
что-нибудь происходило не получается
Приведите если можете код где это сделано полностью.


 
Gero ©   (2005-05-23 22:21) [1]

Что не получается?


 
Eraser ©   (2005-05-23 22:25) [2]

чяс   (23.05.05 22:17)

Нужно определить обработчик события для щелчка на кнопке (OnClick).


 
Anatoly Podgoretsky ©   (2005-05-23 22:32) [3]

Когда ты бросаешь компонент на форму, то выполняются две вещи
 1. Вызов Create
 2. установка Parent
Все это можно сделать и в рантайм.


 
Юрий Зотов ©   (2005-05-23 22:41) [4]

> чяс

Форма - тоже компонент и с ней работают в run-time точно так же, как и с любым другим компонентом. Единственное исключение - если Вы не проектировали ее в design-time, то вызывать надо не Create, а CreateNew. Еще форма не требует установки Parent"а, вместо этого надо вызывать Show или ShowModal.

type
 TForm1 = class(TForm)
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   procedure FormClose(Sender: TObject; var Action: TCloseAction);
   procedure FormButtonClick(Sender: TObject);
 end;

procedure TForm1.Button1Click(Sender: TObject);
var
 Form: TForm;
begin
 Form := TForm.CreateNew(Application);
 Form.Position := poDefault;
 with TButton.Create(Form) do
 begin
   Caption := "Click me!";
   Parent := Form;
   SetBounds((Form.Width - Width) div 2, (Form.Height - Height) div 2, Width, Height);
   OnClick := FormButtonClick
 end;
 Form.OnClose := FormClose;
 Form.Show
end;

procedure TForm1.FormButtonClick(Sender: TObject);
begin
 ShowMessage("Hello, world!")
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
 Action := caFree
end;


 
чяс   (2005-05-24 00:15) [5]

спасибо попробую



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

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

Наверх




Память: 0.47 MB
Время: 0.035 c
14-1116391973
Жук
2005-05-18 08:52
2005.06.06
Трансляция финала кубка УЕФА


1-1116514489
Aleksandr.
2005-05-19 18:54
2005.06.06
Почему портится кодировка при копировании в буфер?


1-1116553868
guest22
2005-05-20 05:51
2005.06.06
Chart компонент


14-1116665703
Dels
2005-05-21 12:55
2005.06.06
<<Скачать и посмотреть (3,7 Mб)>>


4-1113727212
Grief
2005-04-17 12:40
2005.06.06
невидимое письмо