Главная страница
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.48 MB
Время: 0.04 c
6-1111410766
Chaser
2005-03-21 16:12
2005.06.06
Indy TCP клиент и сервер не коннектятся если 2 сетевухи на компе


3-1114509952
Drakon
2005-04-26 14:05
2005.06.06
ADOQuery1.SQL.Add Update редактирование данных


1-1116566276
SteppesSon
2005-05-20 09:17
2005.06.06
Exception


14-1116271689
dazfx
2005-05-16 23:28
2005.06.06
Программа для сканирования сети


4-1113647803
HDD
2005-04-16 14:36
2005.06.06
Можно ли из Delphi напрямую обратиться к жесткому диску