Textausrichtung der Elemente in einer TListView soll zentriert sein

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
EUP
Beiträge: 14
Registriert: Fr 18. Jul 2014, 23:07

Textausrichtung der Elemente in einer TListView soll zentriert sein

Beitrag von EUP »

Hallo,

ich habe eine TListView, in welche ich mehrere Elemente einfüge.

Nun sieht es für mich so aus, dass die Caption linksbündig angezeigt wird. Dies ist unerwünscht, der Text soll zentriert unter dem Icon angezeigt werden.

Trotz intensiver Suche vermag ich die entsprechende Einstellung nicht zu finden.

Wo muss ich was ändern, um das gewünschte Ergebnis zu erhalten.

Einige Daten:
TListView.Viewstyle = vsicon
LargeIcon Imagelist ist verbunden

Die anderen Anzeigemodi werden nicht verwendet.

Umgebung: Linux Mint
Lazarus: Jeweils frisch mit den aktuellen Dateien installiert

Einfügen simpel via:

for d in Tabs do
begin
lvi := lvTabs.Items.Add;
lvi.ImageIndex := 0;
lvi.Caption := d;

end;

Schon mal Dank an alle Wissenden ...

Benutzeravatar
Ally
Beiträge: 279
Registriert: Do 11. Jun 2009, 09:25
OS, Lazarus, FPC: Win und Lazarus Stable release
CPU-Target: x64

Re: Textausrichtung der Elemente in einer TListView soll zentriert sein

Beitrag von Ally »

Hallo EUP,

im Objektinspektor die entsprechende Spalte (TListColumn) auswählen und die Ausrichtung (Alignment) auswählen.
Ablage.png
Ablage.png (24.65 KiB) 655 mal betrachtet

wp_xyz
Beiträge: 5135
Registriert: Fr 8. Apr 2011, 09:01

Re: Textausrichtung der Elemente in einer TListView soll zentriert sein

Beitrag von wp_xyz »

Im Viewstyle vsIcon hat man diese Möglichkeit aber nicht. Ich kann inzwischen bestätigen, dass unter gtk2 in diesem Modus der Text linksbündig ausgegeben wird. Versuchs mal mit qt5 oder qt6.

[EDIT] Ja, mit qt5 sind die Texte zentriert.

EUP
Beiträge: 14
Registriert: Fr 18. Jul 2014, 23:07

Re: Textausrichtung der Elemente in einer TListView soll zentriert sein

Beitrag von EUP »

Vielen Dank, jetzt klappt es.

Bei dieser Gelegenheit bin ich dann auch von Version 3 auf 2.2 zurückgegangen.

Nebenbei, plötzlich funktioniert auch das Auswerten eines Click-Ereignisses vollständig.

wp_xyz
Beiträge: 5135
Registriert: Fr 8. Apr 2011, 09:01

Re: Textausrichtung der Elemente in einer TListView soll zentriert sein

Beitrag von wp_xyz »

EUP hat geschrieben: Do 14. Sep 2023, 22:20 Vielen Dank, jetzt klappt es.

Bei dieser Gelegenheit bin ich dann auch von Version 3 auf 2.2 zurückgegangen.

Nebenbei, plötzlich funktioniert auch das Auswerten eines Click-Ereignisses vollständig.
Heißt das, dass die Texte bei Laz 2.2 unter gtk2 noch zentriert waren, bei 3.0RC1 dagegen nicht mehr? Aber ich habe eine VM mit Manjaro, und da läuft Laz 2.2.4 - mit demselben Problem wenn ich für gtk2 kompiliere.

Und was meinst du mit "vollständigem Auswerten eines Click-Ereignisses"?

EUP
Beiträge: 14
Registriert: Fr 18. Jul 2014, 23:07

Re: Textausrichtung der Elemente in einer TListView soll zentriert sein

Beitrag von EUP »

Ob Sie mit GTK unter 2.2 zentriert wären, weiß ich nicht, das habe ich nicht ausprobiert.

2.2 und QT5 klappt auf alle Fälle.

Zu dem Click-Ereignis
==============

Nachdem ich das Zentrierungsproblem erst einmal zurückgestellt hatte, machte ich mich an die Auswertung der Ereignisse, dabei stellte ich fest, dass nur der erste Klick korrekt ausgewertet wurde.

Bei dem zweiten Klick wurde zwar das Event aufgerufen, aber der Wert des ersten Klicks geliefert, obwohl sich auf dem Bildschirm die Auswahl geändert hat.

Nach der Umstellung auf 2.2 & QT klappt auch das. Ob das jetzt an QT oder an 2.2 liegt, weiß ich nicht.

Ich muss aber gestehen, dass ich mit Lazarus recht wenig am Hut habe, unter Linux arbeite ich gerne mit Gambas. Hier versuche ich ein zeitkritisches Projekt umzustellen und hoffe darauf, dass Lazarus schneller ist.

Antworten