![]() |
Panelschrägkanten farbig? + Frage zu DrawGrid
Gibt es irgendeine Eigenschaft von Panel die es mir erlaubt die Farbe der Schrägkante zu ändern?
zusätzlich: Wie kann man bei DrawGrid einzelne Felder ansprechen und ihre Farbe ändern? mfg peace |
Re: Panelschrägkanten farbig? + Frage zu DrawGrid
Hallo und willkommen bei DP.
Eine solche Eigenschaft kenne ich nicht. Du hast 2 Möglichkeiten a) Du könntest es mit OwnerDraw selbst zeichnen b) Du suchst nach einer Drittanbieter-VCL (solltest du zuerst tun) Eine gute Seite, wo man viele VCLs findet ist ![]() Bei DrawGrid müsstest du auch mit OwnerDraw arbeiten können, um so einzelne Bereiche in anderer Farbe zeichnen zu können. Gruß blackdrake |
Re: Panelschrägkanten farbig? + Frage zu DrawGrid
Zitat:
Delphi-Quellcode:
(in der 3. Spalte wird statt des Zellinhalts 0..3 ein farbiger Text angezeigt)
procedure TBLMainForm.SG_OverviewDrawCell (Sender: TObject; ACol,
ARow: Integer; Rect: TRect; State: TGridDrawState); var CSVal : integer; CSText : string[16]; tw,th,tx,ty : integer; begin if (ACol = 3) and (ARow > 0) then with TStringGrid(Sender).Canvas do begin Brush.Color := clWindow; FillRect (Rect); TryStrToInt (TStringGrid(Sender).Cells [ACol,ARow],CSVal); case CSVal of 1 : begin Font.Color := clRed; CSText := 'offline'; end; 2 : begin Font.Color := clGreen; CSText := 'online'; end; 3 : begin Font.Color := clGreen; CSText := 'Projekt'; end; else begin Font.Color := clBlack; CSText := 'inaktiv'; end; end; tw := TextWidth (CSText); th := TextHeight (CSText); tx := (Rect.right - Rect.Left - tw) div 2; ty := (Rect.bottom - Rect.Top - th) div 2; TextRect (Rect,Rect.Left + tx,Rect.top + ty,CSText); end; if (ACol = 4) and (ARow > 0) then {...} Gruss Reinhard |
Re: Panelschrägkanten farbig? + Frage zu DrawGrid
Danke für die schnellen und hilfreichen Antworten. Die Variante mit OwnerDraw alles selbst zu zeichnen ist mir für mein Projekt zu aufwendig und ich müsste erst einmal schauen, wie das so richtig funktioniert. Ich suche erst einmal nach einer VCL und schaue danach inwieweit ich mit dem Codebeispiel mein DrawGrid-Problem lösen kann.
mfg peace |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:21 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