AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Stringgrid zeilen färben

Ein Thema von koernel · begonnen am 22. Jul 2013 · letzter Beitrag vom 6. Jul 2024
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von dummzeuch
dummzeuch
Online

Registriert seit: 11. Aug 2012
Ort: Essen
1.605 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#11

AW: Stringgrid zeilen färben

  Alt 6. Jul 2024, 11:19
Das Du vorhast, geht nur mit OwnerDrawing. Sonst wird das, was Du zeichnest beim nächsten Redraw automatisch wieder übermalt.

Und dazu gibt es in den vorigen Antworten diverse Beispiele.
Thomas Mueller
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#12

AW: Stringgrid zeilen färben

  Alt 6. Jul 2024, 11:24
und OnDrawCell
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
DieFliege

Registriert seit: 6. Aug 2013
57 Beiträge
 
Delphi XE4 Professional
 
#13

AW: Stringgrid zeilen färben

  Alt 6. Jul 2024, 11:56
... ok, Danke euch beiden. Da ich bereits ein StringGrid habe und nutze, mein Gedanke sich aber wohl nicht "einfach" umsetzen lässt, wurde der Gedanke an "bunte Zeilen" verworfen.

Danke schön & schönes Wochenende
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke
Online

Registriert seit: 10. Jun 2003
Ort: Berlin
9.586 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: Stringgrid zeilen färben

  Alt 6. Jul 2024, 12:33
... ok, Danke euch beiden. Da ich bereits ein StringGrid habe und nutze, mein Gedanke sich aber wohl nicht "einfach" umsetzen lässt, wurde der Gedanke an "bunte Zeilen" verworfen.
Das ist sogar sehr einfach. Du musst es nur halt machen wie beschrieben...

Du musst darauf reagieren, dass der Inhalt neu gezeichnet werden muss. Deshalb bringt es nichts, wenn du es nur einmalig per Buttonklick zeichnest. Stell DefaultDrawing auf False, dann kannst du im OnDrawCell z.B. das machen:
Delphi-Quellcode:
procedure TForm.StringGridDrawCell(Sender: TObject; ACol, ARow: LongInt; Rect: TRect; State: TGridDrawState);
var
  Grid: TStringGrid;
begin
  Grid := Sender as TStringGrid;
  if gdFixed in State then
  begin
    Grid.Canvas.Brush.Color := clInactiveCaption;
    Grid.Canvas.Font.Color := clBlack;
  end
  else
  if gdSelected in State then
  begin
    Grid.Canvas.Brush.Color := clHighlight;
    Grid.Canvas.Font.Color := clHighlightText;
  end
  else
  begin
    if Grid.Cells[ACol, ARow] = 'xthen
      Grid.Canvas.Brush.Color := clRed
    else
      Grid.Canvas.Brush.Color := clWindow;
    Grid.Canvas.Font.Color := clWindowText;
  end;
  Grid.Canvas.FillRect(Rect);
  Grid.Canvas.TextOut(Rect.Left + 3, Rect.Top + 3, Grid.Cells[ACol, ARow]);
end;
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
DieFliege

Registriert seit: 6. Aug 2013
57 Beiträge
 
Delphi XE4 Professional
 
#15

AW: Stringgrid zeilen färben

  Alt 6. Jul 2024, 13:34
Hallo Sebastian,

vielen Dank, nun habe ich es verstanden, was ihr gemeint habt.

Jetzt versuche ich nicht nur eine Zelle zu färben, sondern die ganze Zeile - Das sollte ich aber hinbekommen, wenn ich den Code komplett kapiert habe

Vielen Dank noch mal

LG DieFliege
  Mit Zitat antworten Zitat
TUhr

Registriert seit: 25. Sep 2021
20 Beiträge
 
#16

AW: Stringgrid zeilen färben

  Alt 6. Jul 2024, 16:43
Hallo,

Du mußt Deinen Code bei OnDrawCell des Grid's unterbringen.

MfG
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.068 Beiträge
 
Delphi 12 Athens
 
#17

AW: Stringgrid zeilen färben

  Alt 6. Jul 2024, 17:38
Zitat:
if gdSelected in State
Bei der einzelnen Zellen/Spalten, könnte man noch überlegen die Reihenfolge zu ändern.
Bei der ganzen Zeile wäre es aber ungünstig, wenn sie komplett andersfarbig wird und die blaue Selektion vollständig überdeckt.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:54 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz