Вниз
Скачать: CL | DM;

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

 
Nemo ©   (2003-02-16 02:52) [0]

Подскажите, пожалуйста, как сделать чтобы при нажатии на одну кнопку динамически создавалась другая (не однократно)?


 
Надо нажать на кнопку.   (2003-02-16 05:47) [1]

Все просто, если не разыгрываешь.

Во первых, создаешь обработчик события, надеюсь знаешь.
Во вторых,
procedure TForm1.Button1Click(Sender: TObject);
var MyBtn: TButton;
begin
if (Sender is TButton)
then
with TButton(Sender) do
begin
MyBtn := TButton.Create(Self);
MyBtn.Width := Width;
MyBtn.Height := Height;
MyBtn.Top := Height+Top+4;
MyBtn.Left := Left;

with MyBtn do
begin
Parent := Self;
SetFocus;
Tag := 666;
Name := "Button"+IntToStr(Self.ComponentCount);
Caption := Name;
OnClick := Button1Click;
end;
end;
end;


 
Надо нажать на кнопку.   (2003-02-16 05:57) [2]

А можно так приколоться:

procedure TForm1.Button1Click(Sender: TObject);
var MyBtn: TButton;
begin
if (Sender is TButton)
then
with TButton(Sender) do
begin
Top := 5;
Left:= 5;
Width := Parent.ClientWidth-10;
Height := Parent.ClientHeight-10;
MyBtn := TButton.Create(Self);
MyBtn.Width := Width-6;
MyBtn.Height := Height-6;
MyBtn.Top := 3;
MyBtn.Left := 3;

with MyBtn do
begin
Parent := TButton(Sender);
SetFocus;
Tag := 666;
Name := "Button"+IntToStr(Self.ComponentCount);
Caption := Name;
OnClick := Button1Click;
end;
end;
end;


 
Nemo ©   (2003-02-18 00:47) [3]

Спасибо за ответ
кстати я так делал (ну почти все строки писал) и кнопка у меня создавалась. Вот только где? Я ее нигде так и не нашел и дальнейшие мои попытки ни к чему не привели.


 
DJ_Sedoy ©   (2003-02-18 05:03) [4]

Свойство Parent созданного компонента

MyBtn.Parent:=Form1;
(ну или Panel1 или любой визуальный компонент)


 
Думкин ©   (2003-02-18 06:18) [5]

Только в обоих примерах, есть маааленькое нехорошо.


 
Nemo ©   (2003-02-22 01:50) [6]

Да, а какое?


 
SeNtiMeL ©   (2003-02-22 02:37) [7]

а ты посмотри на код и подумай :)



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.021 c
14-17273
[lamer]Barmaglot
2003-02-18 14:18
2003.03.06
Диски с больше Z.


8-17202
Митяй2
2002-11-07 09:48
2003.03.06
ANI-курсоры


14-17344
Дмитрий К.К.
2003-02-17 06:08
2003.03.06
Именинники 17 февраля


14-17272
Zhenka
2003-02-19 05:55
2003.03.06
Хочу собрать новый комп


3-16936
Kurt_
2003-02-16 17:06
2003.03.06
Люди! а как определить используя АДО, что при сохранении записи р




   Наверх