Das was du wirklich möchtest, sind
Interfaces.
Sowohl die
Unit mit den Funktionen als auch die des Formular kennen die
Unit mit den Interface. Das Formular implementiert das Interface. Die allgemeinen Funktionen erwarten jeweils eine Instanz des Interfaces, um darauf Methoden aufzurufen.
Jetzt kann das Formular die Funktions-
Unit kennen und Funktionen aufrufen, ohne das die Funktionen das Formular kennen müssen. Als Bonus kannst du jetzt die Formular-Implementierung austauschen (oder mehrere haben) ohne das die Funktionen das mitbekommen.
Vorher:- Formular -> Funktionen
- Funktionen -> Formular
Nachher:- Formular -> Funktionen
- Formular -> Interface
- Funktionen -> Interface
Ich würde dir empfehlen, dich mal allgemeiner mit "moderner" objektorientierter Programmierung und Architektur befassen: Da könnte einiges Nützliches für dich dabei sein, was dir hilft solche Probleme von Anfang an zu umgehen.