Einzelnen Beitrag anzeigen

Chris92 .A

Registriert seit: 19. Mai 2010
56 Beiträge
 
#1

array Buttons und proceduren

  Alt 9. Sep 2010, 21:14
Hallo erstmal,
Also ich hab folgendes Problem, dass ich nicht weiß wie man mehreren Buttons die während der Laufzeit erstellt werden verschiedene Procedure zuweisen kann. Die Buttons werden erstellt soviel wie ich gerade will und ich bekomm immer die Procedure einem Button zugewiesen aber wie ändere ich jetzt die Procedure die jetzt z.B: bei den letzten 3 Buttons ändern soll.

Delphi-Quellcode:
unit EigenesTrainingU;

interface

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

type
  TfrmEigenesTraining = class(TForm)
    Label1: TLabel;
    cbxATage: TComboBox;
    procedure cbxATageChange(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure FormClose(Sender: TObject; var Action: TCloseAction);
  private
        btnTag : Array[1..7] of TButton;
        procedure btnTag1(Sender: TObject);
        {procedure btnTag2(Sender: TObject);
        procedure btnTag3(Sender: TObject);
        procedure btnTag4(Sender: TObject);
        procedure btnTag5(Sender: TObject);
        procedure btnTag6(Sender: TObject);
        procedure btnTag7(Sender: TObject);}

    { Private declarations }
  public
    { Public declarations }
  end;

var
  frmEigenesTraining: TfrmEigenesTraining;
  Left,Top,Counter : Integer;
  Change : boolean;

implementation

uses
        EinloggenU;

{$R *.DFM}

procedure TfrmEigenesTraining.cbxATageChange(Sender: TObject);
var I :integer;
begin
        if Change = True then
        for I := 1 to Counter do
        begin
                btnTag[I].Destroy;
                Counter := 0;
        end;
        for I := 1 to strtoint(cbxATage.Items[cbxATage.ItemIndex]) do
        begin
                btnTag[I] := TButton.Create(self);
                btnTag[I].Parent := self;
                btnTag[I].Caption := 'Tag';
                btnTag[I].Left := Left;
                btnTag[I].Top := Top;
                btnTag[I].Visible := True;
                Left := Left + 88;
                Change := True;
                Counter := Counter + 1;
                btnTag[I].OnClick := btnTag1 {PROBLEM PROBLEM PROBLEM PROBLEM}

        end;
end;

procedure TfrmEigenesTraining.FormCreate(Sender: TObject);
begin
        Left := 250;
        Top := 250;
        Change := False;
end;

procedure TfrmEigenesTraining.FormClose(Sender: TObject;
  var Action: TCloseAction);
begin
        frmLogin.show;
end;

procedure TfrmEigenesTraining.btnTag1(Sender: TObject);
begin
        frmLogin.show;
end;

end.
Mein Problem im Code findet ihr unter dem Kommentar "{PROBLEM PROBLEM PROBLEM PROBLEM}"


Schonmals danke im vorraus

MFG Chris92 .A

Geändert von mkinzler ( 9. Sep 2010 um 21:19 Uhr) Grund: Code-Tag duech Delphi-Tag ersetzt
  Mit Zitat antworten Zitat