Einzelnen Beitrag anzeigen

Benutzerbild von haentschman
haentschman

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
5.289 Beiträge
 
Delphi 12 Athens
 
#3

AW: Listview, SubItemImages und Alignment

  Alt 6. Aug 2011, 18:50
Sooo... Ich hasse es, wenn DeddyH immer Recht hat.

Selbermalen funktioniert pinzipiell so... (Komponentennamen zum Schutz der Beteiligten geändert )
Delphi-Quellcode:
uses CommCtrl;
.
.
.
procedure TForm1.Listview1UsersCustomDrawSubItem(Sender: TCustomListView;
  Item: TListItem; SubItem: Integer; State: TCustomDrawState;
  var DefaultDraw: Boolean);
var
  aRect: TRect;
  aIcon: TIcon;
begin
  if SubItem = 2 then // 3. Spalte
  begin
    aIcon:= TIcon.Create;
    try
      DefaultDraw:= False; // Überzeichnen verhindern
      ListView_GetSubItemRect(Sender.Handle,Item.Index,SubItem,LVIR_BOUNDS,@aRect); // TRect des SubItems holen
      ImageList1.GetIcon(20,aIcon); // Icon aus Imagelist holen
      Listview1.Canvas.Draw(aRect.Left + ((aRect.Right - aRect.Left - aIcon.Width) div 2),aRect.Top,aIcon);
      // Icon auf Canvas zeichnen (mittig)
    finally
      aIcon.Free;
    end;
  end;
end;

Geändert von haentschman ( 6. Aug 2011 um 19:12 Uhr)
  Mit Zitat antworten Zitat