Einzelnen Beitrag anzeigen

tofse

Registriert seit: 6. Jun 2011
Ort: Saarlouis
131 Beiträge
 
Delphi XE Professional
 
#1

TListView - Zellen verbinden

  Alt 8. Mai 2013, 14:11
Hallo,

ich habe eine TListView mit
Delphi-Quellcode:
ViewStyle:=vsReport;
GridLines:=true;
In manchen Zeilen sollen die Zellen mit verschiedener Hintergrundfarbe verbunden werden.
Ich verwende
Delphi-Quellcode:
procedure TKabOpTerminManager.ListViewSucheCustomDrawItem(Sender: TCustomListView; Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
var x,y:Integer;
    Rect:TRect;
begin
  if TMiniTermin(Item.Data).InfoText<>'then
  begin
    Sender.Canvas.Brush.Color:=stringToColor(TMiniTermin(Item.Data).Farbe);
    Rect:=Item.DisplayRect(drBounds);
    y:= Rect.Top;
    x:= Rect.Left + 2;
    Rect.Right:=Rect.Left+Sender.Width-10;
    Sender.Canvas.Brush.Style := bsSolid;
    Sender.Canvas.FillRect(Rect);
    Sender.Canvas.TextRect( Rect, x, y, TMiniTermin(Item.Data).InfoText );
  end;
end;
Das Problem ist nun, dass 1. die GridLines angezeigt werden und 2. der Text nicht erscheint.
Erst wenn ich die Maus "wild" über die Fläche bewege, wird die Zeile irgendwann ausgefüllt und der Text wird sichtbar.

Ich hatte es auch schon mit OwnerDraw:=true und onDrawItem versucht, da erscheint der Text zwar von Anfang an, aber die Gridlines sind dennoch sichtbar.

Hat jemand eine Idee??
Christof
Miniaturansicht angehängter Grafiken
listview.png  
  Mit Zitat antworten Zitat