Die Breite der Listview Einträge kann man mit breiteren Bildern beeinflussen. Ich würde mir erst ein Bild mit der Hintergrundfarbe des Listviews erstellen und darauf das richtige Bild zeichnen und dann der Imagelist hinzufügen. Ich hatte vorhin mal 96 Pixel breite Bilder der Imagelist hinzugefügt, dann wurde bedeutend mehr Text angezeigt.
Zitat:
Eventuell kann man sagen wieviele Einträge pro Zeile gemacht werden darf.
Wenn mindestens 1 Item vorhanden ist, funktioniert folgender Code:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
Rect: TRect;
ItemBreite, Anzahl: integer;
begin
if listview1.Items.Count> 0 then
begin
Anzahl:= 0;
Rect:= listview1.Items.Item[0].DisplayRect(drBounds);
ItemBreite:= Rect.Right+ Rect.Left;
while (Anzahl* ItemBreite+ ItemBreite)< listview1.Width do
inc(Anzahl);
caption:= inttostr(Anzahl);
end;
end;