Версия для печати темы

Нажмите сюда для просмотра этой темы в обычном формате

PAUK-NET.RU - Бесплатный ADSL портал Чувашии _ Прикладное программирование _ Создание объектов

Автор: Fly_by_Night (БР) Jun 17 2008, 12:56

Как создать объект на форме программно?

Например кнопку, или массив кнопок (Button(1),Button(2),Button(3)...Button(n))
Например изображение, или массив изображений (Image(1),Image(2),Image(3)...Image(n))

Чтобы потом можно было к ним обращаться по индексу
Image(i).Свойство...



Автор: Fly_by_Night (БР) Jun 20 2008, 21:38

САМ спросил-сам ответил, ну да ладно кому-нить пригодится

Код
   {...}
   procedure RunTimeButtonClick(Sender: TObject);
end;


   {...}
var
   Form1: TForm;
   {Declare an Array of TButtons}
   RunTimeButtons: array[1..10] of TButton;

{...}

implementation

{...}

procedure TForm1.RunTimeButtonClick(Sender: TObject);
begin
   {Show the Button Nummer that was clicked}
   ShowMessage('Button' + IntToStr((Sender as TButton).Tag) + ' clicked!');
end;

procedure TForm1.Button13Click(Sender: TObject);
var
   i: Byte;
begin
   for i := 1 to 10 do
   begin
     {Create the buttons}
     RunTimeButtons[i] := TButton.Create(Self);
     with RunTimeButtons[i] do
     begin
       Parent  := Form1;
       Caption := 'Button ' + IntToStr(i);
       Top     := i * Height;
       Tag     := i;
       {Assign a OnClick handler}
       OnClick := RunTimeButtonClick;
       Visible := True;
     end;
   end;
end;

Форум Invision Power Board (http://nulled.cc)
© Invision Power Services (http://nulled.cc)