Hallo,
ich habe hier nochmal ein drittest bsp. sollte man bei jeder klasse die man erzeugt einen constructor haben???
bsp.:
Delphi-Quellcode:
unit UKlassen;
interface
uses
Forms, StdCtrls;
type
TFenster =
class
constructor Create(Sender: TObject);
private
public
end;
type
TNavi =
class
constructor Create(f : TForm; c :
Array of String);
destructor Destroy();
private
b : TButton;
// Button für die Navigationsleiste
w : TFenster;
// Fenster
public
end;
implementation
constructor TFenster.Create(Sender: TObject);
var f : TForm;
begin
f:=TForm.Create(
nil);
f.Caption:=TButton(Sender).Caption;
f.ClientWidth:=240;
f.ClientHeight:=320;
f.BorderStyle:=bsSingle;
f.BorderIcons:=[biSystemMenu,biMinimize];
f.Font.
Name:='
Arial';
f.KeyPreview:=True;
f.Position:=poScreenCenter;
f.ShowModal;
end;
constructor TNavi.Create(f : TForm; c :
Array of String);
var i : Integer;
// Schleifenvariable
begin
for i:=0
to Length(c) - 1
do
begin
b:=TButton.Create(
nil);
b.Caption:=c[i];
b.Width:=200;
b.Height:=30;
b.Top:=10 + i * 40;
b.Left:=f.Width
div 2 - b.Width
div 2;
b.OnClick:=TFenster.Create;
b.Parent:=f;
end;
end;
destructor TNavi.Destroy();
begin
b.Destroy;
end;
end.
--> das bsp. funktioniert aber leider nicht. habe versucht den button ein onclik ereigniss zuzuweisen das ereigniss besteht aus den constructor. das kann man wohl nicht machen oder??? wie würdet ihr das denn machen, wenn das ereigniss in eine anderen klasse soll.