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 [TDTADOTree] Feldinhalt formatieren (https://www.delphipraxis.net/94367-%5Btdtadotree%5D-feldinhalt-formatieren.html)

newgro 20. Jun 2007 15:00


[TDTADOTree] Feldinhalt formatieren
 
Hallo *,

ich suche schon den halben Tag nach einer Lösung für folgendes Problem:

Ich möchte die Anzeige eines Dezimalwertes in einer Spalte des TDTADOTree formatieren.
Momentan werden alle Zahlen 12345,78 dargestellt. Ich hätte gern 12.345,78

Leider geht es nicht mit überschreiben von

Delphi-Quellcode:
procedure Tfrm.trRelationGetText(Sender: TBaseVirtualTree;
  Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType;
  var CellText: WideString);
begin
  // Hier dann Format(...)
end;
Diese Funktion wird offenbar nicht beim TDTADOTree aufgerufen. Hat zufällig jemand Erfahrung
mit dem Formatieren und kann mir weiterhelfen?

PS: Das Formatieren eines Strings mit Format ist NICHT mein Problem.

Danke
Per

newgro 3. Jul 2007 15:34

Re: [TDTADOTree] Feldinhalt formatieren
 
Kann mir keiner helfen?

Per

Bernhard Geyer 3. Jul 2007 15:41

Re: [TDTADOTree] Feldinhalt formatieren
 
Ich kenn zwar TDTADOTree nicht aber ich vermute damit dieses Event aufgerufen werden soll muß der Tree in einen "Virtual Mode" gesetzt werden.

[OT]Aber wieso sollte man ein GUI-Komponente (Tree) fest mit einer bestimmten DB-Zugriffsversion (ADO) verknüpfen :gruebel: Wenns schon sollte es allgemein ein TDTDatasetTree sein[/OT]

HeikoAdams 3. Jul 2007 15:47

Re: [TDTADOTree] Feldinhalt formatieren
 
Für bestimmte Feldtypen gibt es eine Eigenschaft "DisplayFormat". Vielleicht hilft Dir das ja weiter

newgro 4. Jul 2007 08:08

Re: [TDTADOTree] Feldinhalt formatieren
 
@HeikoAdams
DisplayFormat gibt es leider nicht. (Auch kein anderes Format)

@Bernhard Geyer
Zitat:

"Virtuell Mode"
Weißt Du zufällig auch wie das gehen soll? Bin leider kein Experte :-(

Ich habe mal ein bischen im Quellcode gelesen.
TDTADOTree erbt von DTDBTreeView und dieser erbt von TVirtualStringTree.
In TVirtualStringTree wird an verscheidenen Stellen die DoGetText Methode
aufgerufen, in der die OnGetText Action aufgerufen wird.
In DTDBTreeView wird die Methode DoGetText überschrieben, aber leider nicht
inherited aufgerufen. Damit kann ich OnGetText Action definieren soviel ich
will. Es wird einfach nicht aufgerufen.

Weiß zufällig jemand, wie ich an den Support für diese Komponenten komme?
Auf der Website Table-Report
gibt es leider kein Forum.

@Bernhard Geyer
Zu Deiner [OT] Frage: Ich hatte nur den ADO Typ angegeben. Wie oben angeführt
erbt diese spezielle Komponente von der allgeinen. Wahrscheinlich ist es ein
Casting oder Initialisierungsproblem, das zu lösen war.

Danke für Eure Hilfe
Per

Bernhard Geyer 4. Jul 2007 08:17

Re: [TDTADOTree] Feldinhalt formatieren
 
Zitat:

Zitat von newgro
@Bernhard Geyer
Zitat:

"Virtuell Mode"
Weißt Du zufällig auch wie das gehen soll? Bin leider kein Experte :-(

Da ich die Kompo nicht kenne (und auch nichts mit TVirtualStringTree mache bin ich hier auch kein Experte. Ich kenn nur allgemein einen "Virtual Mode" bei anderen Tree-Kompos (TVirtualStringTree läuft doch immer in einem solchen Modus?)

Zitat:

Zitat von newgro
Weiß zufällig jemand, wie ich an den Support für diese Komponenten komme?

Komponente kaufen dann bekommst du support.


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:17 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