Na du überlegst dir ein Datenspeicherungsmodell (z.B. mit Records und Arrays oder mit Listen), entwirfst es und so weiter.
DANN kommt die
GUI dran.
Du leitest von TGraphicControl ab, wenn du draufzeichnen willst. Du leitest von TWinControl ab, wenn du nen Fokus usw. brauchst. Wenn du beides brauchst, leitest du von TCustomControl ab.
Wenn du nur nen Container hast, in den du Subklassen reinstopfst, reicht
IMHO TWinControl.