![]() |
Frage zum OnDrawCell Ereignis von TStringGrid
Ich habe mehrere Grids auf meinem Formular und möchte das beim OnDrawCell Ereignis diesen Code ausführen.
Delphi-Quellcode:
Doch ich habe insgesamt sechs Grids und dieser Code soll bei jedem OnDrawCell Ereignis jedes Grids ausgeführt werden.
procedure TfrmMain.sgWednesdayDrawCell(Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState); var Grid: TStringGrid; begin Grid := Sender as TStringGrid; if gdSelected in State then begin Grid.Canvas.Font.Color := clBlack; Grid.Canvas.Brush.Color := RGB(200, 200, 255); Grid.Canvas.Font.Style := [fsBold]; end; Grid.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, Grid.Cells[ACol, ARow]); end; Nun möchte ich aber nicht bei jedem Ereignis jedes Grids dieses Code hinein kopieren. Deshalb könnte man sich ja eine eigene Klasse schreiben, diese von TStringGrid ableiten und dort irgendwie diesen Algorithmus einfügen. Meine sechs Grid auf dem Formular brauche ich dann nur von meiner Grid Klasse ableiten und alles wird gut :mrgreen: . Hmm ... soviel dazu, aber wie mache ich das? |
Mach doch eine Procedur raus, der du ein TStringGrid und die nötigen Parameter aus dem OnDrawCell-Ereignis übergibst.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:22 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