Thema: Delphi dynamische Komponenten

Einzelnen Beitrag anzeigen

Benutzerbild von nailor
nailor

Registriert seit: 12. Dez 2002
Ort: Karlsruhe
1.989 Beiträge
 
#22
  Alt 23. Dez 2002, 16:54
probier mal das zu verstehen, und eventuell anzupassen:

Delphi-Quellcode:
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 LabelClick(Sender: Tobject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;
  DeineLabel: array of TLabel;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var i : Integer;
begin
i := succ(High(DeineLabel));
SetLength(DeineLabel,i + 1); //Der array mit deinen Labeln wird eins länger
DeineLabel[i] := TLabel.Create(Form1); //In den grade erschaffenen Platz kommt ein Label
DeineLabel[i].Left := 10; //Wohin
DeineLabel[i].Top := i * 20; //Wohin
DeineLabel[i].Color := clred; //Farbe
DeineLabel[i].OnClick := LabelClick; //Was ist, wenn man klickt
insertcontrol(DeineLabel[i]); //Label "wirklich" erstellen
end;

procedure TForm1.LabelClick(Sender: TObject);
begin
if Sender = DeineLabel[0] {irgendeine Zahl statt 0} then
  {was bei dem Label passieren soll} Form1.Close;
end;

end.
Michael N.
http://nailor.devzero.de/code/sharpmath/testing/ --- Tests, Feedback, Anregungen, ... aller Art sehr willkommen!
::: don't try so hard - it'll happen for a reason :::
  Mit Zitat antworten Zitat