Also einen Typen, von welchem beide Klassen erben. (ganz oben ist immer TObject und dazwischen liegt oft auch TComponent)
Je nachdem was du machen willst, kannst du eventuell auch in der Prozedur gleich mit einem gemeinsamen Vorfahren arbeiten.
Der am meisten spezialisierte gemeinsame Vorfahre von
TLabel und
TPanel ist
TControl. Der hat schon ein paar öffentliche Eigenschaften.
Was findest du an overload unelegant?
Wenn man einen passenden gemeinsame Vorfahren hat (oder Templates; SCNR) hat, dann können sehr ähnliche (nicht-triviale) überladene Funktionen unelegant sein.