Auf fMSG kannst du doch schon von überall aus zugreifen
(über MSG)
Die Klasse selber verwaltet dann koplett alles selber und Andere (auch Nachfahren) gehen kontroliert über die Property.
Property kann man sogar erstmal protected deklarieren und das was wichtig ist, kann später noch veröffentlicht werden.
Siehe die vielen Custom-Klassen in Delphi.
In TCustomEdit ist die Funktion drin und TEdit wird dem Benutzer gegeben.
Dann kann man bei Nachfahren sogar noch entscheiden (wenn man diese von TCustomEdit ableitet) was dort sichtbar ist.