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/)
-   -   Firemonkey Stringgrid und OnDrawCell (https://www.delphipraxis.net/167324-firemonkey-stringgrid-und-ondrawcell.html)

eddie11 24. Mär 2012 09:24

Firemonkey Stringgrid und OnDrawCell
 
Hi,

ich vermisse die Möglichkeit, DrawCell des Stringgrid überschreiben zu können. Ich möchte einen Button in eine Zelle plazieren. Das habe ich in der VCL im Ereignis "OnDrawCell" getan. Bei Firemonkey gibt es das (anscheinend) nicht mehr. Wie also kann ich meinen Button positionieren?

mkinzler 24. Mär 2012 09:29

AW: Firemonkey Stringgrid und OnDrawCell
 
In FMX ist jede Komponente ein "Container"

eddie11 24. Mär 2012 09:36

AW: Firemonkey Stringgrid und OnDrawCell
 
ja, das weiss ich schon, war auch mein erster Ansatz. Aber welches Control soll ich als Container benutzen? Ich kann die TStringColumn nehnmen, aber dann ist die gesamte Spalte der Container. Die Zelle kann ich nicht als Objekt (und somit als Container) ansprechen.

eddie11 24. Mär 2012 13:07

AW: Firemonkey Stringgrid und OnDrawCell
 
ich habs nach etwas Googeln inzwischen gefunden. Ich habe zuvor mit dem Suchbegriff "Firemonkey StringGrid OnDrawCell" gesucht, das gab nix. Wenn ich mit "FMX" (danke mkinzler) statt "Firemonkey" suche, dann finde ich was. Anscheinend hat sich "FMX" als Bezeichner für Firemonkey etabliert.

Zum Ergebnis:
Ich kann natürlich zur Laufzeit auf die Zelle zugreifen. Ich palziere mir den Button in die Column und ändere beim OnSelectedChanged des Grids den Container (Parent) des Buttons.

Code:
meinButton.Parent := meinGrid.Columns[0].CellControlByRow(meinGrid.Selected);
so ist der Button nur in der jeweils selektierten Zeile zu sehen.


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