Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Vererbung von ??? (https://www.delphipraxis.net/119991-vererbung-von.html)

Baeuerle 4. Sep 2008 07:57


Vererbung von ???
 
Hallo,

ich habe einen Typ definiert und möchte jetzt eine VCL Komponente haben die mir das ganze anzeigt. Ich weiß aber nicht genau welche Komponente ich als Basis nehmen soll.

Delphi-Quellcode:
type
 TFileTye = (ftWord, ftExcel, ftUnknown);
 TViewCol = (coFilename, coPath, coFileType, ....)
 TColumnSet = set of TViewCol;

 titem = class
 public
  property filename: string;
  property path: string;
  property filetype: TFileTye;
  porperty ....
 
 tmylist = class
 public
  property Items[index: integer]: titem
  property DisplayColumns: TColumnSet;

Ich habe eine beliebige Liste mit verschiedenen Eigenschaften. Ich möchte jetzt eine Komponente die mir diese Liste anzeigt schreiben. Bei der Anzeige sollen sowohl Grafiken als auch Text ausgegeben werden. Die Ausgabe welche Spalten angezeigt werden soll abhängig von TColumnSet sein.

Die Frage: von welcher Basiskomponente aus ist es am einfachsten eine solche Komonente zu erstellen? TStringgrid, TListView, TDrawGrid...

thx Baeuerle

mkinzler 4. Sep 2008 08:00

Re: Vererbung von ???
 
Nimm einn Panel oder Container. Für die Anzeige ist ein zusammengesetztes Control am ehesten geeignet

Baeuerle 4. Sep 2008 08:07

Re: Vererbung von ???
 
Du meinst also ein Panel und auf dieses dann verschiedene Komponenten im Konstroktor erzeugen (Headercontrol, Listboxen zur Stringanzeige, Grids für die Grafik, ...)

Das Problem was ich hierbei sehe, ist dass z.B. die Selektion eines Eintrages synchronisiert werden muss, darüber hinaus sieht die entstehende Selektion einer Zeile dann nicht gerade ansprechend aus :-(

Oder???

mkinzler 4. Sep 2008 08:09

Re: Vererbung von ???
 
Du kannst das ganze auch als composite control designen

Baeuerle 4. Sep 2008 08:22

Re: Vererbung von ???
 
kannst du mir ein beispiel für eine "composite control" geben/erläutern? Ich weiß ehrlich gesagt gerade nicht was Du meinst.

mkinzler 4. Sep 2008 08:35

Re: Vererbung von ???
 
http://video.codegear.com/coderage/r...html#REFNO1049
http://video.codegear.com/CodeRageII...clControls.zip

Baeuerle 4. Sep 2008 09:16

Re: Vererbung von ???
 
ok, jetzt bin ich schlauer was "composite control" angeht ;-)

Das löst allerdings immer noch nicht mein Problem:

Zitat:

Zitat von Baeuerle
...Das Problem was ich hierbei sehe, ist dass z.B. die Selektion eines Eintrages synchronisiert werden muss, darüber hinaus sieht die entstehende Selektion einer Zeile dann nicht gerade ansprechend aus :-(
...


iKilledKenny 4. Sep 2008 09:34

Re: Vererbung von ???
 
Ich bin bei solchen Anforderungen ein Freund von TStringGrid. Das kann horizontal Scrollen, man kann beliebige Inhalte im OnDrawCell darstellen, es hat schon einen sehr ansehnlichen Default-Darstellungs-Stil, man kann einzelne Zellen, ganze Zeilen markieren, etc. etc.

mkinzler 4. Sep 2008 09:42

Re: Vererbung von ???
 
Oder dem VST


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:22 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz