AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Größten Wert einerDBGrid Zeile farblich hinterlegen
Thema durchsuchen
Ansicht
Themen-Optionen

Größten Wert einerDBGrid Zeile farblich hinterlegen

Ein Thema von waldforest · begonnen am 30. Okt 2015 · letzter Beitrag vom 31. Okt 2015
 
waldforest

Registriert seit: 8. Mai 2005
366 Beiträge
 
Delphi XE3 Enterprise
 
#1

Größten Wert einerDBGrid Zeile farblich hinterlegen

  Alt 30. Okt 2015, 18:04
Hallo,
ich habe ein Verständnisproblem mit meiner farblichen Gestaltung.
Ich möchte den größten Wert in einer DBGrid Zeile farblich markieren.
Die Zellen werden auch farblich hinterlegt, aber dummerweise immer eine Zeile tiefer als die eigentliche Zeile. Und außerdem flackernmdie Zellen im Grid.


Code:
procedure TNachbestellung.jvdbgrd_GridDrawColumnCell(
  Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn;
  State: TGridDrawState);
var
  I, maxfeld, maxwert: Integer;
  str_feld : string ;
begin

    IF (Column.Field.FieldName = 'VK_1_MENGE') or
     (Column.Field.FieldName = 'VK_2_MENGE') or
     (Column.Field.FieldName = 'VK_3_MENGE') or
     (Column.Field.FieldName = 'VK_4_MENGE') or
     (Column.Field.FieldName = 'VK_5_MENGE') or
     (Column.Field.FieldName = 'VK_6_MENGE') then
  begin
    maxfeld := 0;
    maxwert := 0;
    // ermitteln des größten Wertes und festhalten in welchem Datenfeld
    for I := 1 to 6 do
    begin
     str_feld := 'VK_'+IntToStr(i)+'_MENGE';
     if zqry_Best.fieldbyname(str_feld).asinteger > maxwert then
     begin
       maxwert := zqry_Best.fieldbyname(str_feld).asinteger;
       maxfeld := I;
     end;
    end;
    str_feld := 'VK_'+IntToStr(maxfeld)+'_MENGE' ;

    // wenn größtes ermitteltes Datenfeld = dem aktuellen Gridfeld, dann farbig hinterlegen.
    if (Column.Field.FieldName = str_feld) then
      Column.Color := clred
    else
      Column.Color := clWindow;

       jvdbgrd_Grid.Canvas.fillRect( rect );
       jvdbgrd_Grid.DefaultDrawColumnCell(Rect,DataCol,Column,State);
  end;
was mach ich falsch ?
Angehängte Grafiken
Dateityp: jpg DBGridFarbe.jpg (9,0 KB, 22x aufgerufen)
mfg wf

Geändert von waldforest (30. Okt 2015 um 18:24 Uhr)
  Mit Zitat antworten Zitat
 


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: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 by Thomas Breitkreuz