Einzelnen Beitrag anzeigen

Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: ListView - Darstellungsproblem bei ViewStyle=vsIcon

  Alt 7. Feb 2007, 22:56
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;
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat