Hallo,
mit folgendem Code füge ich in einer ListView eine Zeile mit einer Gauge ein.
Delphi-Quellcode:
li:=LVMagazin.Items.add;
li.Caption:=t.ID;
...
r:=li.DisplayRect(drBounds);
for i:=0 to 4 do
r.Left:=r.Left+LVMagazin.columns[i].Width;
r.Right:=r.Left+LVMagazin.columns[5].Width;
g:=TGauge.Create(Self);
g.BackColor:=clRed;
g.ForeColor:=clLime;
g.Parent:=LVMagazin;
g.BoundsRect:=r;
g.Progress:=100-li.Index;
li.Data:=g;
Beim Scrollen, Navigieren in der ListView oder bei Refresh werden nicht die richtigen Gauges zum Item gezeichnet.
Es sieht so auf, als ob die Gauges nicht nach dem ItemIndex gezeichnet werden sondern nach der angezeigten Zeilennummer. In der ersten sichtbaren Zeile wird die Gauge des erten Items (Index 0) gezeichnet, egal wie der Vert.Scrollbalken steht!
Ich hoffe ich habe mich verständlich ausgedrückt.
Was kann man da machen?
Gruß Andreas