AGB  ·  Datenschutz  ·  Impressum  







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

ListBox - Zeile einfärben funktioniert nicht

Ein Thema von Tyler · begonnen am 4. Dez 2004 · letzter Beitrag vom 4. Dez 2004
Antwort Antwort
Benutzerbild von Pr0g
Pr0g

Registriert seit: 21. Mai 2004
809 Beiträge
 
Delphi 7 Personal
 
#1

Re: ListBox - Zeile einfärben funktioniert nicht

  Alt 4. Dez 2004, 17:34
Liegt wohl daran, dass du auf komische Weise auf das zu zeichnende Item zugreifst, bei der Textausgabe dann aber richtig machst, so sollte es gehen:
Delphi-Quellcode:
procedure TForm1.lb_debugDrawItem(Control: TWinControl; Index: Integer;
  Rect: TRect; State: TOwnerDrawState);
var
  Col: TColor;
  S: String;
begin
  lb_debug.Canvas.Brush.Color := clWhite;
  lb_debug.Canvas.Pen.Color := clWhite;

  lb_debug.Canvas.Rectangle(Rect);

  S := lb_debug.Items[Index];
  if S[1] = '<then
    Col := clGreen
  else
  if S[1] = '>then
    Col := clRed
  else
    Col := clBlack;

  lb_debug.Canvas.Font.Color := Col;

  lb_debug.Canvas.TextOut(Rect.Left + 1, Rect.Top + 1, lb_debug.Items[Index]);
end;
Die zwei mit "<--" gekenzeichneten Zeilen kannst du auch in OnCreate der Form oder so verschieben, da diese nicht jedesmal beim Zeichnen aufgerufen werden müssen.
Edit: sorry, hatte mich vertan

MfG Pr0g
  Mit Zitat antworten Zitat
Antwort Antwort


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 13:10 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