Einzelnen Beitrag anzeigen

Benutzerbild von uligerhardt
uligerhardt

Registriert seit: 19. Aug 2004
Ort: Hof/Saale
1.746 Beiträge
 
Delphi 2007 Professional
 
#18

AW: TForm Klasse dynamisch erstellen ja nachdem ob Klasse vorhanden ist

  Alt 16. Nov 2021, 14:08
Unter der Annahme, dass TTolleNeueForm von TMainForm abgeleitet ist:
Delphi-Quellcode:
type
  TMainFormClass = class of TMainForm;

var
  MainFormClass: TMainFormClass;
  PersistentClass: TPersistentClass;
begin
  MainFormClass := TMainForm;
  PersistentClass := GetClass('TTolleNeueForm');
  if PersistentClass <> nil then
    MainFormClass := TMainFormClass(PersistentClass);

  myForm := MainFormClass.Create(Application);
end;
Als ein Sicherheitsfanatiker würde ich die Annahme prüfen:
Delphi-Quellcode:
  if Assigned(PersistentClass) then
  begin
    Assert(PersistentClass.InheritsFrom(TMainForm));
    MainFormClass := TMainFormClass(PersistentClass);
  end;
Uli Gerhardt
  Mit Zitat antworten Zitat