Einzelnen Beitrag anzeigen

r2c2

Registriert seit: 9. Mai 2005
Ort: Nordbaden
925 Beiträge
 
#7

AW: Komponente ableiten

  Alt 30. Aug 2010, 18:54
Hier läuft was schief. Im Ansatz schon.

ich habe eine Komponente "TPerson" erstellt, die von TCustomControl abgeleitet ist.
OK soweit. Auch, wenn man sich darüber streiten kann, inwieweit es nicht besser wäre, hier Darstellung und Logik mehr zu trennen.

Zitat:
Sie besitzt eine Eigenschaft "Markiert" vom Typ Boolean .
Das ist schon fragwürdig. Muss die Person das wirklich wissen oder ist das eher eine Eigenschaft des Stammbaums. Beides könnte der Fall sein. Kommt drauf an, wie der restliche Ansatz aussieht.

Zitat:
Innehalb dieser habe ich 15 "TPerson"'s erstellt
Innerhalb? Kommt mir komisch vor...

Zitat:
und platziert. Damit ich über den Quelltext eine einzelne "TPerson" ansprechen kann, habe ich zusätzlich noch eine TObjectList "Personen" innerhalb von "TStammbaum" erstellt.
Hm... kann ne gute Idee sein. Wenn du weißt, was du tust.

Zitat:
Nun möchte ich, dass wenn der Nutzer eine "TPerson" klickt, diese den Status markiert (True) erhält und alle anderen den Status False erhalten.
Das macht mich glauben, dass die Markierung eher eine Eigenschaft des Stammbaums ist.

Zitat:
Wenn ich die Komponenten via Quelltext über die Objektliste anspreche funktioniert das auch wunderbar. Sobald ich aber die OnClick Procedure von TStammbaum überschreiben möchte in etwa so procedure TStammbaum.Click(Sender: TObject); weigert sich Delphi zu kompilieren, weil er mit dem Sender nichts anfangen kann.
Das ist klar. Click hat ja auch keine Parameter. Aus gutem Grund.

Zitat:
Verwende ich nur procedure TStammbaum.Click; override; funktioniert zwar das Programm aber sobald ich auf eine TPerson klicke, tut sich gar nichts.
Klar. Weil eine Person etwas anderes ist als der Stammbaum.

Vorschlag: Du erklärst mal genauer, was du vor hast. Und zwar wirklich was und nicht wie. Dann machen wir uns mal gemeinsam Gedanken darüber, wie man das besser machen könnte...

mfg

Christian
Kaum macht man's richtig, schon klappts!
  Mit Zitat antworten Zitat