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/)
-   -   ListView-Column-Caption vollständig anzeigen (https://www.delphipraxis.net/180183-listview-column-caption-vollstaendig-anzeigen.html)

CocoPops 29. Apr 2014 02:03

ListView-Column-Caption vollständig anzeigen
 
Nabend, ich schlage mich gerade mit einem kläglichen Problem herum. Wenn ich in meinem Programm die Interfacesprache ändere, dann werden die Captions der ListView-Column-Header nicht vollständig angezeigt und am Ende wird ein Drittel der Caption durch drei Punkte ersetzt. Wenn ich jetzt eine Column um einen einzigen Pixel verkleinere oder vergrößere, wird die Caption vollständig angezeigt. Zu wenig Platz ist somit nicht vorhanden.

Kann man z.B. Messages senden, damit die Captions wieder vollständig angezeigt werden oder was könnte man sonst machen?

Perlsau 29. Apr 2014 02:18

AW: ListView-Column-Caption vollständig anzeigen
 
Repaint?

CocoPops 29. Apr 2014 02:28

AW: ListView-Column-Caption vollständig anzeigen
 
Durch das Repaint habe ich gerade herausgefunden, dass es wohl doch am Platzangebot liegen muss.
Das Folgende soll eine Column darstellen: [----------].
Es sind 10 Leerstellen vorhanden und effektiv kann die Caption nur auf etwa sechs, maximal sieben davon, gezeichnet werden: [Caption---]
Die volle Breite der Column auszunutzen, da gibt es wahrscheinlich nichts und das ist so windows-bedingt nehme ich an?

Perlsau 29. Apr 2014 02:34

AW: ListView-Column-Caption vollständig anzeigen
 
Was passiert denn, wenn du gleich im Objektinspektor 10 Zeichen in die Caption einträgst?

CocoPops 29. Apr 2014 12:50

AW: ListView-Column-Caption vollständig anzeigen
 
Dasselbe. Die Caption wird immer am Ende abgeschnitten.

Mittlerweile weiß ich woran es liegt. Meine Columns haben zeitweise Images. Und dieses Image nimmt logischerweise viel Platz weg.

Alter Mann 1. Mai 2014 08:48

AW: ListView-Column-Caption vollständig anzeigen
 
Versuch mal folgendes:
Code:
...
uses
  ..., CommCtrl...

  for I := 0 to ListView.Columns.Count - 1 do
    ListView.Perform(LVM_SETCOLUMNWIDTH, I, LVSCW_AUTOSIZE_USEHEADER);


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:53 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