Mir ist gerade noch eine andere Möglichkeit eingefallen. Möglicherweise eine nicht besonders saubere Lösung aber es funktioniert scheinbar. Den Typ Pointer kannte ich so eigentlich noch nicht. Habs einfach mal so hingeschrieben und compiliert. Der Compiler meldet keinen Fehler und erste Tests führen zu keinen Problemen.
Delphi-Quellcode:
TMyClass =
class(TObject)
fVar1 : bolean;
fVar2 : integer;
fList : TMyList;
fSetupForm: Pointer;
// TSetupForm; <--- duch den Typ Pointer kann muss die Setup Unit nicht mehr in der uses Liste stehen.
private
constructor Create;
destruktor Destroy;
override;
// weitere Methoden und Eigenschaften...
public
procedure Setup;
// weitere Methoden und Eigenschaften...
end;
implementation
uses SetupForm;
procedure TMyClass.Setup;
begin
fSetupForm := TSetupForm.Create;
TSetupForm(fSetupForm).Show;
end;
Ist gegen diese Vorgehensweise etwas einzuwenden?