![]() |
FMX: TStringGrid OnDrawColumnBackground wird nicht aufgerufen
Hallo,
ich habe ein TStringGrid in einer FMX-Anwendung. Da würde ich jetzt gerne ein paar Zellen einfärben. Eigentlich bietet sich doch dafür das Ereigniss OnDrawColumnBackground an Das feuert aber nicht. OnDrawColumnsCell geht. Muss ich da noch irgend etwas anderes einstellen? D10.4 |
AW: FMX: TStringGrid OnDrawColumnBackground wird nicht aufgerufen
1. Hast du ein Model: TGridModel zugewiesen?
2. Wenn ja, was sagt der Break Point in FMX.Grid.TColumn.DrawBackground (mit Debug-DCU!)? 3, Wenn da der Debugger nicht anhält, wie ist es in TStyledGrid.InternalDrawCells.PartialDrawing? 4. Hast du TGridOption.AlternatingRowBackground deinen TGridModel.Options hinzugefügt? |
AW: FMX: TStringGrid OnDrawColumnBackground wird nicht aufgerufen
Vielen Dank für die Tipps.
Das mit dem Model verstehe ich noch nicht so ganz. Aber ich habe jetzt die Option AlternatingRowBackground von dem StringGrid eingeschaltet und dann geht er auch ins OnDrawColumnBackground rein. Ist aber auch etwas verwirrend, deshalb bin ich nicht gleich draufgekommen. Ich will ja gar keinen AlternatingRowBackground, ich will nur ganz bestimmte Zellen einfärben. Aber anscheinend muss man das aktivieren, damit man ins OnDrawColumnBackground reinkommt, um dann da alles außer den gewünschten Zellen weiß zu malen. |
AW: FMX: TStringGrid OnDrawColumnBackground wird nicht aufgerufen
Ich würde hier "OnDrawColumnCell" verwenden (und für den Spaltenkopf, falls benötigt, "OnDrawColumnHeader")...
|
AW: FMX: TStringGrid OnDrawColumnBackground wird nicht aufgerufen
Ja, das hatte ich zwischenzeitlich auch verwendet, vor dem Tip von TiGü.
Das hat nur den Nachteil, das man den Zellinhalt nochmal selbst zeichnen muss. Und das übergebene Bounds : TRectF deckt nicht die komplette Zelle ab, sondern ist ringsherum ein paar Pixel kleiner. Das muss man dann auch wieder Inflaten, aber nur für den Hintergrund, nicht für den Text, Im OnDrawColumnBackground passt das Bounds. Ist ja auch für den Hintergrund gedacht. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 04:03 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz