Einzelnen Beitrag anzeigen

Benutzerbild von Dani
Dani

Registriert seit: 19. Jan 2003
732 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Formulare als Datei speichern und zur Laufzeit laden? Wi

  Alt 29. Aug 2004, 12:26
Hallo nochmal,

ich hätte da gerne mal ein Problem.
Aus einem mir verborgenem Grund findet FindClass() die modulare Formklasse nicht, obwohl sie im initialization-Abschnitt der Package-Unit mit RegisterClass registriert wird. Hier der Code:

Form laden:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
 aClass: TClass;
 frmMod: TForm;
begin
  aClass := nil;
  // Package laden
  LoadPackage('Package1.bpl');
  // Klasse finden
  aClass := FindClass('TModuleForm');
  // Instanz erzeugen
  If Assigned(aClass) then
   begin
    frmMod := TFormClass(aClass).Create(self);
    frmMod.Show;
   end;
end;
Unit in Package:
Delphi-Quellcode:
unit uMod1;

interface

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

type
  TModuleForm = class(TForm)
    Label1: TLabel;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

implementation

{$R *.dfm}

procedure TModuleForm.Button1Click(Sender: TObject);
begin
 close;
end;

initialization
 RegisterClass(TModuleForm);
finalization
 UnRegisterClass(TModuleForm);

end.
Woran könnte das liegen?
Dani H.
At Least I Can Say I Tried
  Mit Zitat antworten Zitat