Schönen guten Abend nochmal zusammen,
Ich bin jetzt ein Stück weiter, allerdings denke ich das es der falsche Weg ist, und außerdem ist auch noch eine Fehler drin.
Ich habe jetzt einfach mal so zum Test 4 GLOBALE Variablen angelegt, die ich beim CREATE initialisiere und in die GetText Methode einbinde.
Funktioniert auch jetzt genau so wie ich mir das vorstelle (siehe ScreenShot1), bis auf wenn ich eine Ebene über das - Zeichen Expandiere, kann ich diese Ebene nie wieder FullExpanded setzen(siehe Anhang 2).
Außerdem, gefällt mir das mit den GLOBALEN Var. nicht.
hier mal der aktuelle Code...
Delphi-Quellcode:
procedure TForm1.VSTSystemCreate;
var
pNode :pVirtualNode;
begin
DM_PS.ConPSConfig.Connect;
DM_PS.Qry_VSTSystemCreate.Open;
Objekt := DM_PS.Qry_VSTSystemCreate.FieldByName('
KUNDE').AsString;
case DM_PS.Qry_VSTSystemCreate.FieldByName('
ZENTRALENTYP').AsInteger
of
0: Zentrale := '
NOVAR HB/MB 24';
1: Zentrale := '
NOVAR HB/MB 48';
2: Zentrale := '
NOVAR MB100';
3: Zentrale := '
NOVAR MB256';
4: Zentrale := '
BOSCH UEZ2000';
5: Zentrale := '
NOVAR BMC 1024';
6: Zentrale := '
ESSER IQ8 Control';
7: Zentrale := '
SONSTIGE';
end;
COMPort := '
COM 1, 9600,8,1';
IPPort := '
192.168.100.101';
DM_PS.Qry_VSTSystemCreate.Close;
VSTSystem.BeginUpdate;
pNode := VSTSystem.AddChild(
nil);
pNode := VSTSystem.AddChild(pNode);
VSTSystem.AddChild(pNode);
VSTSystem.AddChild(pNode);
VSTSystem.EndUpdate;
end;
procedure TForm1.VSTSystemGetText(Sender: TBaseVirtualTree; Node: PVirtualNode;
Column: TColumnIndex; TextType: TVSTTextType;
var CellText: WideString);
var
Level : Integer;
begin
Level := VSTSystem.GetNodeLevel(Node);
if Column = 0
then
begin
if Level = 0
then
CellText := Objekt;
if Level = 1
then
CellText := Zentrale;
if Level = 2
then
begin
if Node.
Index = 0
then
CellText := IPPort
else
CellText := COMPort
end;
end;
end;
Gruß Jens