Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi ListView: Abstand der Images zum Rand verkleinern (https://www.delphipraxis.net/108848-listview-abstand-der-images-zum-rand-verkleinern.html)

Dawn87 20. Feb 2008 12:41


ListView: Abstand der Images zum Rand verkleinern
 
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo :-)

Ich habe folgendes Problem:

Auf meinem Fenster befindet sich eine ListView. In dieser ListView befinden sich Bilder (ListItems mit ImageIndex aber ohne Caption). Die Bilder sind vertikal angeordnet (man kann es sich in etwa wie in PowertPoint vorstellen, dort werden standardmäßig links in einem Panel Thumbnails von den Folien angezeigt).

Die ListItems in der ListView werden leider standardmäßig mit einem großen Abstand zum Rand positioniert. Weiß jemand wie ich diesen Abstand verkleinern kann?

Der Anhang sollte euch vermitteln was ich meine.

Grüße
Stefan

kaiser1401 20. Feb 2008 12:55

Re: ListView: Abstand der Images zum Rand verkleinern
 
mh, vll die Eigenschaft "Indent" des ListviewItems

Dawn87 20. Feb 2008 14:08

Re: ListView: Abstand der Images zum Rand verkleinern
 
Hallo Kaiser,

erst einmal vielen Dank für Deine Antwort!

Leider bewirkt das Ändern der Indent-Eigenschaft nichts. Soweit ich weiß, ist die Indent Eigenschaft auch nur im vsReport Modus zu gebrauchen. Ich verwende den vsIcon ViewStyle.

Hast Du eventuell noch eine Idee?

Grüße
Stefan

kaiser1401 20. Feb 2008 14:18

Re: ListView: Abstand der Images zum Rand verkleinern
 
Versuch es mal damit:

Delphi-Quellcode:
  ListView1.Items[0].Left:=2;
vll ist das was brauchbares;

Dawn87 20. Feb 2008 15:38

Re: ListView: Abstand der Images zum Rand verkleinern
 
Hallo,

leider funktioniert das auch nicht so ganz.

Negative .Left Werte werden von der ListView ignoriert. Mit dieser Methode könnte man den Abstand zum Rand prima vergrößern :lol:, andersherum geht es allerdings nicht.

grüße
Stefan

kaiser1401 21. Feb 2008 09:43

Re: ListView: Abstand der Images zum Rand verkleinern
 
Liste der Anhänge anzeigen (Anzahl: 1)
Also bei mir funktioniert das mit dem click auf Button3:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
begin
  with ListView1.Items.Add do
   begin
    Caption:='someitem';
    ImageIndex:=0;
   end;
  with ListView1.Items.Add do
   begin
    Caption:='someitem';
    ImageIndex:=0;
   end;
end;

procedure TForm1.Button3Click(Sender: TObject);
var i:integer;
const step = 190;
begin
  for i:=0 to Listview1.items.count-1 do
   begin
    ListView1.Items[i].Left:=1;
    ListView1.Items[i].Top:=2+i*step;
   end;
end;
siehe auch Screenshot im Anhang

Dawn87 21. Feb 2008 16:43

Re: ListView: Abstand der Images zum Rand verkleinern
 
Hallo Kaiser!

Wenn ich deinen Code mit Delphi 2007 kompiliere, funktioniert es nach wie vor nicht.

Wenn ich den Code hingegegen mit Delphi 7 kompiliere, funktioniert er einwandfrei!

Was könnte das bloß sein...

Grüße
Stefan

Dawn87 21. Feb 2008 17:38

Re: ListView: Abstand der Images zum Rand verkleinern
 
Also wenn ich das Manifest aus der EXE Datei die ich mit Delphi 2007 erstellt habe rauswerfe, funktioniert es dort auch.

Also es liegt an der ListView aus den Common Controls 6.0 :-/
Mit den traditionellen 5.0ern funktioniert es einwandfrei.

Grüße
Stefan


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:58 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz