Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.06.2009, 13:44   #1
juan666777
Пользователь
 
Аватар для juan666777
 
Регистрация: 24.01.2009
Сообщений: 84
По умолчанию Как создать Label и отопрозить на форме?

Подскажите пожалуйста как создать массив элементов label массив должен быть динамический и по нажатию кнопки создавался элемент label и выводился на форму и что бы с ним можно было работать?
Evil Skull
juan666777 вне форума Ответить с цитированием
Старый 12.06.2009, 17:33   #2
Neeter
Форумчанин
 
Аватар для Neeter
 
Регистрация: 22.02.2009
Сообщений: 875
По умолчанию

В общем, весь код проекта:
Код:
unit Unit1;

interface

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

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

var
  Form1: TForm1;
  ALabels: array of TLabel;   //Динамический массив label'ов

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
 SetLength(ALabels, Length(ALabels) + 1);    //Увеличиваем длину на единицу
 ALabels[Length(ALabels) - 1] := TLabel.Create(Self);  //Создаем label
 With ALabels[Length(ALabels) - 1] do
 begin
  //Устанавливаем родителя, в данном случае форму
  Parent := Self;
  //Если родителем должна быть панель, то писать так - Parent := Panel1;
  //Заголовок label'а с его индексом
  Caption := Format('Label №%d', [Length(ALabels) - 1]);
  //В свойсве tag у label'а будет индекс в массиве
  Tag := Length(ALabels) - 1;
  //Рандомная позиция на форме
  Left := Random(Self.Width);
  Top := Random(Self.Height);
 end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
 Randomize;
end;

end.
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство.
Neeter вне форума Ответить с цитированием
Старый 12.06.2009, 22:58   #3
juan666777
Пользователь
 
Аватар для juan666777
 
Регистрация: 24.01.2009
Сообщений: 84
По умолчанию

Большое спасибо
Evil Skull
juan666777 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как создать и отобразить на форме массив типа TImage YaFakir Мультимедиа в Delphi 3 26.03.2009 13:09
Непрозрачный LABEL на прозрачной форме CraZZy RabbIt Общие вопросы Delphi 11 16.02.2009 19:45
При расположении Label на компонентах, место под Label, не реагирует на событие onClick. NavigatorNeba Компоненты Delphi 3 15.11.2008 19:56
Как заставить Label моргать? dx+ Помощь студентам 3 08.05.2008 20:33
Вопрос по label. Как сделать так чтобы label была прозрачной. Lonix Компоненты Delphi 2 01.04.2007 06:23