Einzelnen Beitrag anzeigen

günni0
(Gast)

n/a Beiträge
 
#17

AW: Form-Event global für alle Formulare überschreiben?

  Alt 20. Apr 2018, 11:28
Erstelle ich die Instanz aber selber also
Delphi-Quellcode:
FormListe := TFormListe.Create(Application);
FormListe.Show;
gibt es diese Zugriffsverletzung nicht.

Das hier gibt aber eine in der anderen Unit
Delphi-Quellcode:
procedure CreateAndShowForm(const AFormClass: TFormClass; AFormInstance: TCustomForm);
begin
 if not Assigned(AFormInstance) then
  AFormInstance := AFormClass.Create(Application);

 AFormInstance.Show;
end;

CreateAndShowForm(TFormListe, FormListe);

Nur als Beispiel was auch schon zur AV führt. Nur ein Button, 2 Forms, absolut nichts weiter
Delphi-Quellcode:
procedure CreateForm(const AFormClass: TFormClass; AFormInstance: TCustomForm);
begin
 if not Assigned(AFormInstance) then
  AFormInstance := AFormClass.Create(Application);
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 CreateForm(TFormListe, FormListe);
 FormListe.Show; // hier passiert gar nichts und AV
end;

Geändert von günni0 (20. Apr 2018 um 11:37 Uhr)
  Mit Zitat antworten Zitat