Wir haben das komplett über Interfaces und passende Factories gelöst.
Es gibt also ein Interface für eine bestimme Form z.B
Delphi-Quellcode:
ICncMachineConverterForm = interface
['{DC5376B6-B124-4035-B641-6BECAD516DE9}']
function ShowcheckMarking(const aGetMark: int64; const aContact : tCncContact) : boolean;
end;
Dann haben wir verschiedene Factories (Die meistens auch Interfaces sind) für unsere Forms
also zB:
Delphi-Quellcode:
TCnFormFactory = class // Static
class function getICncMachineConverterForm : ICncMachineConverterForm; static;
end;
Im Source dann einfach
Delphi-Quellcode:
iCncForm := TCnFormFactory. getICncMachineConverterForm;
if IcncForm. ShowcheckMarking(14, myContact) then......
Ob die Form nun selber das Interface zur verfügung stellt oder wo auch immer das herkommt ist unwichtig.