Вниз
Скачать: 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.016 c
1-17051
EndDie
2003-02-25 14:04
2003.03.06
Пакеты-plugins - КАК?


3-16857
Korvin
2003-02-17 08:40
2003.03.06
rxBDGrid это не BDGrid (передача фокуса)


6-17233
Vovaka
2003-01-17 11:13
2003.03.06
Как называется библиотека FastNet в D7 ?????.bpl ?


3-16866
JibSkeart
2003-02-03 16:32
2003.03.06
Отправить данные сторонней программе из


9-16844
greenrul
2002-10-09 13:49
2003.03.06
Динамическая загрузка wav в WaveList:




   Наверх