![]() |
Textausrichtung mal anders
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,
im Zuge eines Projektes tauchte auf einmal ein kleines Designproblem'chen' auf. In einem VST sollen die verfügbaren Sprachen aufgelistet werden und zwar der Name Links und die LCID Rechts. Wie bekomme ich die LCID-Ausrichtung gleichmäßig hin, ohne zu tief in AfterCellPaint einzugreifen? Danke Demo-Code hängt an (läuft unter XE8). |
AW: Textausrichtung mal anders
Liste der Anhänge anzeigen (Anzahl: 1)
In deinem VirtualStringTree existiet nur eine Spalte. Benötigt man verschiedene Ausrichtungen, verwendet man entsprechend mehr Spalten. Für dich würde eine zusätzliche Spalte genügen. Zusätzlich solltest du dir einen NodeData-Typen deklarieren:
Delphi-Quellcode:
Bei der Zuweisung der Node-Daten weist du dem Titel das zu, was bei dir vordem Data.Entry.Caption hieß, der Id die erzeugte Id. Bei mir (ich lese Branchen und Zusatzinfos aus einer Tabelle ein) sieht das so aus:
TYPE
PNodeData = ^TNodeData; TNodeData = Record Titel : String[100]; Id : Integer; End; CONST SizeNodeData = SizeOf(TNodeData);
Delphi-Quellcode:
In der GetText-Procedure fragst du dann nicht nach dem Level, sondern nach der Spalte:
...
BranchenStart := Sender.AddChild(Sender.RootNode); vData := Sender.GetNodeData(BranchenStart); vData.Id := Id; vData.Titel := STR_200(Titel); Qset_Branchen.Next; ...
Delphi-Quellcode:
Die Ausrichtung der jeweiligen Spalten nimmst du im ObjectInspector vor.
procedure TFormMain.VSTGetText(Sender: TBaseVirtualTree; Node: PVirtualNode; Column: TColumnIndex; TextType: TVSTTextType;
var CellText: string); Var vData : PNodeData; begin vData := Sender.GetNodeData(Node); Case Column Of 0 : CellText := String(vData.Titel); 1 : CellText := String(vData.Id); End; end; Ungetestet, da aus einem meiner Projekte herauskopiert ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:24 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz