Forum: Programmieren allgemein
by himitsu,
18. Nov 2022
Bei Controls mußt du aufpassen.
Eine Suche über Components ist da sicherer.
Es wurde ja explizit der Owner angegeben und genau in Jenem kann man suchen.
DevExpress verschachtelt gern übermäßig oft Komponenten ineinander ... da weißt du garnicht, ob es noch zwischenebenen gibt und ob das Control wirklich (noch) dort liegt.
Auch Delphi selbst hat einige Komponenten, wo gern mal der Parent...
Forum: Programmieren allgemein
by himitsu,
18. Nov 2022
Ach ja, alternativ kann man zusätzlich die wichtigen Komponenten auch noch in Array, TList<>, TDictionary<> oder Dergleichen speichern,
um "direkt" drauf zugreifen zu können, ohne zu suchen.
Und ja, und/oder als Komponente oder Frame zusammenfassen, mit passenden Property/Zugriffsfunktionen.
Forum: Programmieren allgemein
by himitsu,
18. Nov 2022
Das, was du bei deinen Komponenten als Owner beim Create angibst (hier dein TabSheet), darin kannst du dann mit DeinTabSheet.FindComponent auch danach suchen.
Oder manuell DeinTabSheet.Components nach dem Typ durchsuchen, ansatt mit FindComponent nach dem Namen (NewViewer.Name hättest du doch bestimmt noch gesetzt)
Owner -> x.Components und x.FindComponent und for var C in x do
Parent ->...