Einzelnen Beitrag anzeigen

paresy

Registriert seit: 24. Aug 2004
Ort: Lübeck
105 Beiträge
 
Delphi 2007 Professional
 
#6

Re: ListView: Text einer Zelle in einer anderen Farbe

  Alt 14. Dez 2004, 15:46
irgendwie soetwas sollte funktionieren...

Delphi-Quellcode:
procedure TForm1.ListView1CustomDrawSubItem(Sender: TCustomListView;
  Item: TListItem; SubItem: Integer; State: TCustomDrawState;
  var DefaultDraw: Boolean);
var R: TRect;
    Text: String;
begin

 if (Item.Index = 1) and (SubItem = 1) then
  begin
    //get subitems rect
    ListView_GetSubItemRect(Sender.Handle, Item.Index, SubItem, LVIR_BOUNDS, @R);

    Text := Item.SubItems[SubItem]; //data

    Sender.Canvas.Brush.Color := clSkyBlue;
    Sender.Canvas.Font.Color := clGreen;
    Sender.Canvas.FillRect(R);

    //paint text
    DrawText(Sender.Canvas.Handle,
             PCHAR(Text),
             Length(Text),
             R,
             DT_SINGLELINE or DT_END_ELLIPSIS);

    DefaultDraw := False;
  end

end;
  Mit Zitat antworten Zitat