Klammert man diese Zeiles aus, welche die Symbole auf den Canvas schreibt, ist die Darstellung unter nativen Windows richtig, aber dies ist nur ein bebastel.
Code: Alles auswählen
for i := 0 to ImageList1.Count - 1 do begin
//ImageList1.Draw(Canvas, i * 16, 0, i);
end;
Startet man das Programm aber mit Wine, dann bliebt die Darstellung fehlerhaft.
Für weitere Detail bitte hier weiter lesen: viewtopic.php?f=11&t=10911&start=68
Ab hier gibt es ein kleines ListView-Demo: viewtopic.php?f=11&t=10911&start=79
Unter Linux funktioniert alles einwandfrei.