Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Вниз

Button   Найти похожие ветки 

 
Нуб   (2007-02-28 10:23) [0]

Напишите пожалуйста код как динамически создается и выводится на экран , к примеру кнопка , заранее спасибо


 
Нуб   (2007-02-28 10:27) [1]

уже не надо , я сам нашел

var Button1: TButton;
begin
Button1  := TButton.Create(Form1);
Button1.Parent = Form1;
Button1.Caption = "My dynamic Button";


 
Elen ©   (2007-02-28 10:29) [2]


> Нуб

Пожалуйста :

var    tb:TButton;
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
tb:=TButton.Create(form1);
 with tb do begin
  Parent:=form1;
  Caption:="dffsd";
  Top:=10;
  Left:=10;
  Width:=100;
  Height:=100;
  Visible:=true;
 end;
end;


 
Нуб   (2007-02-28 10:40) [3]

ха сенкс, так еще прикольней


 
Нуб   (2007-02-28 10:40) [4]

а зачем визибл тру ? :) можно же и так


 
Elen ©   (2007-02-28 10:48) [5]

Удалено модератором


 
Нуб   (2007-02-28 10:57) [6]

ха, красота :)
вообщем делаете новый апликатион бросаете на него 1 кнопку потом 1 Edit
и на клик конпки пишите код
//=========================================//
procedure TForm1.Button1Click(Sender: TObject);
var kol: integer;
   btn: array [1..5] of TButton;
begin
      for kol:=1 to StrToInt(Trim(Edit1.Text)) do begin
          btn[kol] := TButton.Create(Form1);
         with btn[kol] do begin
           Parent := Form1;
           Caption := "Button " + IntToStr(kol);
      Top:=kol*25;
 Left:=20;
            Width:=100;
            Height:=25;
            Visible := true;
        end;
    end;
end;
//=========================================//

в Edit вводите количество кнопок котороые вы хотите чтобы они создались и получаете их на экране чудесно :)


 
Нуб   (2007-02-28 10:59) [7]

а как их дестрой ?


 
Elen ©   (2007-02-28 11:00) [8]


> Нуб   (28.02.07 10:57) [6]

Ну вот видиш. сам разобрался. Не так уж и сложно ;)


 
Elen ©   (2007-02-28 11:04) [9]


> Нуб   (28.02.07 10:59) [7]

Вот все в купе :
unit Unit1;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls;

type
 TForm1 = class(TForm)
   Button1: TButton;
   Edit1: TEdit;
   Button2: TButton;
   procedure Button1Click(Sender: TObject);
   procedure Button2Click(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var kol: integer;     btn: array of TButton;
 Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);

begin

     for kol:=1 to StrToInt(Trim(Edit1.Text)) do begin
        SetLength(btn,StrToInt(Trim(Edit1.Text))+1);
         btn[kol] := TButton.Create(Form1);
        with btn[kol] do begin
          Parent := Form1;
          Caption := "Button " + IntToStr(kol);
     Top:=kol*25;
Left:=20;
           Width:=100;
           Height:=25;
           Visible := true;
       end;
   end;
end;
//=========================================//

procedure TForm1.Button2Click(Sender: TObject);
begin
 for kol:=low(btn) to high(btn) do btn[kol].free
end;

end.


 
Нуб   (2007-02-28 11:06) [10]

или
procedure TForm1.Button2Click(Sender: TObject);
var kol: integer;
begin
 for kol:=1 to StrToInt(Trim(Edit1.Text)) do begin
    Form1.RemoveControl(btn[kol]);
     btn[kol].Destroy;
   end;
end;


 
Нуб   (2007-02-28 11:06) [11]

классный код у тебя !!! супер


 
Elen ©   (2007-02-28 11:09) [12]


> Нуб   (28.02.07 11:06) [11]

Дарю на память ;)


 
Нуб   (2007-02-28 11:14) [13]

:)


 
f2d ©   (2007-03-02 18:57) [14]

давайте несколько разовьём тему. в файле записаны компоненты которые необходимо закинуть на форму. например в хмл. по иерархии вычисляется owner а по полям свойства которые доступны для этого компонента, например для батона или эдита и тд - caption, для чекбокса - checked...

встала задача - для каждого батона нужно назначить свою процедуру на событие onClick, код которой можно так же задавать извне.
по моим соображениям, код будущей процедуры будет храниться в файле(название файла - имя компонента). для работы со скриптами у меня есть компонент PascalScript. как сделать привязку OnClick"a и PascalScript"a? или предложите другие варианты...
заранее спасибо



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

Форум: "Начинающим";
Текущий архив: 2007.03.25;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.48 MB
Время: 0.059 c
2-1173027229
Chaval'
2007-03-04 19:53
2007.03.25
Тип db


2-1172693006
Lonix
2007-02-28 23:03
2007.03.25
Вопрос с отправкой мыла


2-1172994806
FIL-23
2007-03-04 10:53
2007.03.25
Изменение ключа в таблице


15-1172756154
@!!ex
2007-03-01 16:35
2007.03.25
Народ, прощу прощения.


3-1167462346
vidiv
2006-12-30 10:05
2007.03.25
проблема TADOQuery + MSAccess + Union





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский