Hallo!
Bitte entschuldigt die blöde Frage, aber ich hab keine Ahnung, wa sich falsch gemacht habe!
Ich will zur Laufzeit eine Seite in ein TPageControl einfügen, das ich ebenso zur Laufzeit erzeuge.
Dabei kriege ich in der Methode AddPage die genannte
Exception. Der Debugger beleibt auf der Anweisung "PageControl = self stehen".
Delphi-Quellcode:
type
TDialogRegisterPage = class (TTabSheet)
constructor Create(AOwner: TComponent);
end;
TDialogRegister = class(TPageControl)
constructor Create(AOwner: TComponent);
procedure AddPage(const AName: String);
end;
constructor TDialogRegisterPage.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
FControl := TAnyControl.Create(self);
FControl.Parent := self;
FControl.Align := alClient;
end;
procedure TDialogRegister.AddPage(const AName: String);
var Page: TDialogRegisterPage;
begin
with TDialogRegisterPage.Create(self) do
begin
Caption := AName;
PropKinds := APropKinds;
Parent := self;
PageControl := self;
end;
end;
constructor TDialogRegister.Create(AOwner: TComponent);
begin
inherited Create(AOwner);
AddPage('Titel1');
AddPage('Titel2');
end;
-----------------------------
type
TForm1 = class(TForm)
...
procedure FormCreate(Sender: TObject);
...
private
MyDlgRegisters: TDialogRegister;
public
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
MyDlgRegisters := TDialogRegister.Create(self);
with MyDlgRegisters do
begin
Left := 0;
Top := 0;
Width := 185;
Height := 289;
end;
MyDlgRegisters.Parent := self;
end;
Wer kann mir sagen, was ich in meiner betriebsblindheit übersehen habe?