Einzelnen Beitrag anzeigen

martinf16

Registriert seit: 26. Aug 2007
99 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: TColorListBox mit eigenen Farben aufwerten

  Alt 27. Okt 2008, 22:33
Ich habs inzwischen mit einer Listview hinbekommen, das ist der Code:

Delphi-Quellcode:

procedure Tprog.tabelleCustomDrawItem(Sender: TCustomListView; Item: TListItem;
  State: TCustomDrawState; var DefaultDraw: Boolean);
var
  r, r2: trect;
  breite: integer;
begin
  breite:=sender.Column[0].Width; //Breite der ersten Spalte
  r:=item.DisplayRect(drbounds); //Rect der Zelle der ersten Spalte
  sender.canvas.Brush.Color:=farbliste[item.Index]; //farbliste ist ein Array mit den Farbwerten
  sender.Canvas.fillrect(r); //Rechteck wird in erste Zelle gezeichnet
  sender.Canvas.Brush.Color:=clwindow; //Farbe wird wieder zurückgestellt
end;
Allerdings funktioniert es noch nicht ganz so, wie ich es mir vorstelle. Die Farbe erscheint erst wenn man mit der Maus längere Zeit darüberfährt, offenbar wird das Rechteck teilweise wieder übermalt - es ist nur noch an einer Ecke sichtbar. Habt ihr ne Idee???

Danke schonmal!
  Mit Zitat antworten Zitat