Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Einträge in TListview rechtsbündig. Geht das? (https://www.delphipraxis.net/210666-eintraege-tlistview-rechtsbuendig-geht-das.html)

nezumi7 24. Mai 2022 12:34

Einträge in TListview rechtsbündig. Geht das?
 
... Ich meine dabei nicht die Spaltenüberschriften, sondern die Einträge in den darunterliegenden Zeilen (im ViewStyle vsReport).

Im Objektinspektor gibts zwar zu den Spalten (Listview1.Columns[0]) die Eigenschaft Alignment. Wenn man da aber auf "taRightJustify" klickt, springt es sofort wieder zurück auf "taLeftJustify".

Wenn ich zur Laufzeit ausführe:

Delphi-Quellcode:

var
  vCol: TListColumn;
begin
  vCol := ListView1.Columns.Add;
  vCol.Alignment := taRightJustify;
wird das schlicht ignoriert. Kann mir jemand sagen, warum das nicht geht und wie man es richtig macht?

(virtualtreeview kenne ich, möchte es aber nicht verwenden, weil ich es irrsinnig kompliziert und unübersichtlich finde)

Redeemer 24. Mai 2022 12:55

AW: Einträge in TListview rechtsbündig. Geht das?
 
Das geht nicht bei der linkesten Spalte. Bei allen anderen geht es. Man kann natürlich eine linkeste Spalte so breit wie das Icon erstellen und die zweite Spalte für die Caption verwenden. Das geht aber nur so lange, bis man exzessiv Indent benutzen oder Werte bearbeiten möchte.

Mit Gewalt kann man die Caption mit
Delphi-Quellcode:
FigureSpace = #8199;
auffüllen. Ist aber bei bearbeitbaren Captions und bei Indent auch nicht geil.

venice2 24. Mai 2022 12:55

AW: Einträge in TListview rechtsbündig. Geht das?
 
EDIT:
Setze die erste column(0) in der weite auf -1 und arbeite ab der zweiten column(1) dann siehst du die erste nicht und alles ist so wie gewünscht.
Wie @Redeemer schon sagt der erste Eintrag ignoriert die Zuweisung.

himitsu 24. Mai 2022 13:09

AW: Einträge in TListview rechtsbündig. Geht das?
 
Und wenn es sonst nicht geht, dann einfach via CustomDraw und das TextOut selbst nach rechts schieben. :roll:

Redeemer 24. Mai 2022 13:21

AW: Einträge in TListview rechtsbündig. Geht das?
 
Zitat:

Zitat von venice2 (Beitrag 1506321)
EDIT:
Setze die erste column(0) in der weite auf -1

Warum nicht 0? Negative Breite für Spalten sind doch reserviert für automatische Anpassungen an den Inhalt.

nezumi7 24. Mai 2022 13:25

AW: Einträge in TListview rechtsbündig. Geht das?
 
Super, ich danke Euch. Ich wusste nicht, dass für die erste Spalte andere Regeln gelten und hab daher zu früh aufgegeben. Wenns ab der zweiten Spalte rechtsbündig ist, reicht mir das. Jedenfalls wenn ich mit dem Tip von venice die erste spalte ausblende (habs aber auch auf 0 gesetzt).

Bisschen pfuschig, aber für meine Zwecke ausreichend... :wink:

venice2 24. Mai 2022 13:56

AW: Einträge in TListview rechtsbündig. Geht das?
 
Zitat:

Zitat von Redeemer (Beitrag 1506325)
Zitat:

Zitat von venice2 (Beitrag 1506321)
EDIT:
Setze die erste column(0) in der weite auf -1

Warum nicht 0? Negative Breite für Spalten sind doch reserviert für automatische Anpassungen an den Inhalt.

Weil unterumständen die Column beim drüberfahren mit der Maus doch erkannt wird und sich aktivieren\verschieben läßt.
Habe es aber nicht getestet. Reine Vermutung.

Zitat:

Bisschen pfuschig, aber für meine Zwecke ausreichend..
Es geht auch anders wenn dir das lieber ist?
Ownerdraw..


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