![]() |
DBGrid - jede 2. Zeile färben
Hallo z´sammen...
hab n Problem, zu dem ich nun wirklich schon alle möglichen Quellen durchsucht hab, aber absolut nich fündig geworden bin: Wie färbt man jeder 2. Zeile oder auch jede ungerade Zeile in einem DBGrid? Is warscheinlich ne ganz einfache Frage, aber ich komme partout nich dahinter! vielen Dank im voraus mfG |
Re: DBGrid - jede 2. Zeile färben
So einfach ist die Frage gar nicht. Habe den Source leider im Moment nicht greifbar. Bei einer Listbox ist es mir schon gelungen. Im Grid müssen wahrscheinlich die Spalten noch berücksichtigt werden.
Ich hasse es meist, wenn einer sagt: benutze die Hilfe oder suche mal hier im Forum. Leider kann ich heute selber auch nichts anderes sagen. Suche mal nach "farbiges Memo" oder "farbige Listbox", so in der Richtung. Beitrag von mir. Heute Abend schau ich noch mal rein. Dann komme ich zumindest an meinen Quelltext. |
Re: DBGrid - jede 2. Zeile färben
danke für deine Mühen Hansa, gedulde ich mich also noch bis heut abend :)
mfG //EDIT: Also folgendes hab ich eben noch gefunden: ![]() Hier steht zwar wie ich DBGrid-Zeilen einfärbe, aber das nur aufgrund des Inhaltes eines Datenfeldes. Was bei mir jetzt also noch eine Frage aufwirft: Wie kriege ich Delphi dazu, jede 2. Zeile zu färben? Über eine Abfrage, ob die aktuelle Zeile gerade oder ungerade ist? Woher weiß ich (Delphi) welche Zeile gerade "aktuell" ist? Woher weiß ich ob eine Zahl gerade oder ungerade ist? (Mir dünkt das hat irgendwas mit "MOD" zu tun... f.e. INTEGER mod 2, kann das sein?) Also wenn einem hierzu noch was einfällt.... wenn nicht wart ich erstmal gespannt auf Hansa´s Lösungs-Vorschläge :) |
Re: DBGrid - jede 2. Zeile färben
Hai Tyler und Hansa,
ich habe mal in der Code-Library gesucht [cl]färben[/cl]. Ups. Der Beitrag ist ja von mir. :lol: Der sollte ohne Probleme für ein DB-Grid anzupassen sein. |
Re: DBGrid - jede 2. Zeile färben
*freu*.... ich habs, Trial & Error sei dank, kam ich im Endeffekt auf folgende Lösung:
Delphi-Quellcode:
vielen Dank für eure Aufmerksamkeit :)
procedure TMainForm.grArtikelDrawColumnCell(Sender: TObject;
const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin If ((qMatBestand.RecNo mod 2) = 0) then begin grArtikel.Canvas.Brush.Color := clGreen; grArtikel.DefaultDrawColumnCell(Rect, 0, Column, State); end; end; mfG |
Re: DBGrid - jede 2. Zeile färben
obwohl sich noch eine Frage bei mir aufdrängt:
Da ich in meinem Grid ja abwechselnd den Inhalt verschiedener DB´s anzeigen lasse: Wie bringe ich das Grid dazu die Ansicht zu aktualisieren bzw. meine Draw-Prozedur nocheinmal zu durchlaufen? Denn jedesmal wenn ich die DataSource für mein Grid wechsle, geht auch die Zeilenfärbung verloren! mfG |
Re: DBGrid - jede 2. Zeile färben
Aktualisieren -> DbGrid.Refresh
Neu Zeichen -> DbGrid.RePaint |
Re: DBGrid - jede 2. Zeile färben
Tyler, der Sauhund. :mrgreen: Der hat dieselbe Idee wie ich, die Boxen/Grids auf dem Bildchirm wie ein Tabellierpapier aussehen zu lassen (Grün/weiß). clGreen ist aber zu dunkel, zumindest mit schwarzer Schrift. Soll ich noch den hellgrünen Code rausrücken? :shock:
|
Re: DBGrid - jede 2. Zeile färben
hehe... 8) nene, das schmucke Grün wählte ich nur zu "Vorführungszwecken", im Endeffekt nehm ich ein zartes Blau, in etwa genau so verführerisch wie hier der Hintergrund gefärbt ist :)
vielen Dank nochma mfG |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 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