![]() |
Die Zelle werd zwar Blau aber der Text nicht Weiss
Hallo Liebe Leute,
Ich habe eine Frage! Ich habe eine Procedure gefunden in dieser Foren, die genau dass tut was ich von ihr will. Mein Programm kontroliert eine Anzahl Servers. Ich habe eine Stringgrid mit einer Menge Servernamen, und mein Programm läuft durch die Zelle um die Servernamen zu kontrollieren. Wenn mein Programm durch die Zellen läuft, dann muss der hintergrund blau werden, und der Text weiss. Mit der hier unter angegebenen Procedure wird die Zelle zwar blau, aber der Text wird nicht weiss. Ist vielleicht jemand, der mir hierbei helfen kann?
Delphi-Quellcode:
Peter Kiers
procedure TForm1.GridServersDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState); var Kleur: TColor; begin with (Sender as TStringGrid) do begin if gdFixed in State then Kleur := FixedColor else if IsWaiting then Kleur := Color else if gdFocused in State then Kleur := clActiveCaption else if gdSelected in State then Kleur := clLime else Kleur := Color; with Canvas do begin Brush.Color := Kleur; Font.Color := clBlack; FillRect(Rect); if not IsWaiting and (gdFocused in State) then begin Draw(Rect.Left, Rect.Top, Image1.Picture.Graphic); Rect.Left := Rect.Left + Image1.Width +2; end; TextOut(Rect.Right - TextWidth(Cells[ACol, ARow]) - 2, Rect.Top + 2, Cells[ACol, ARow]); end; end; end; |
Re: Die Zelle werd zwar Blau aber der Text nicht Weiss
Zitat:
MfG, Tryer |
Re: Die Zelle werd zwar Blau aber der Text nicht Weiss
so wie es ausschaut wird ja bei dem oben genanten Code NUR die Hintergrundfarbe der Zelle geändert und die Textfarbe ist IMMER schwarz
|
Re: Die Zelle werd zwar Blau aber der Text nicht Weiss
versuche es mal so:
Delphi-Quellcode:
procedure TForm1.GridServersDrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState); var bgColor: TColor; fontColor: TColor; begin with (Sender as TStringGrid) do begin if gdFixed in State then begin bgColor := FixedColor fontColor := clBlack; end else if IsWaiting in State then begin bgColor := Color; fontColor := clBlack; end else if gdFocused in State then begin bgColor := clActiveCaption; fontColor := clWhite; end else if gdSelected in State then begin bgColor := clLime; fontColor := clWhite; end else begin bgColor := Color; fontColor := clBlack; end; with Canvas do begin Brush.Color := bgColor; Font.Color := fontColor; FillRect(Rect); if not IsWaiting and (gdFocused in State) then begin Draw(Rect.Left, Rect.Top, Image1.Picture.Graphic); Rect.Left := Rect.Left + Image1.Width +2; end; TextOut(Rect.Right - TextWidth(Cells[ACol, ARow]) - 2, Rect.Top + 2, Cells[ACol, ARow]); end; end; end; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:33 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