Hallo noch einmal
Am OnCollapsing un am OnExpanded habe ich erfolgreich mein Button gezeigt/versteckt.
Das problem ist jetzt aber nur, wenn ich den oberen Node minimisiere, geht der undere nach oben(so sei es)....aber
Buttons bleiben darunter://
Mein InitNode(wo ich Buttons erzeuge)
Code:
Data.RefreshButton := TButton.Create(nil);
Data.RefreshButton.Parent := VST;
Data.RefreshButton.Height := VST.DefaultNodeHeight;
Data.RefreshButton.Caption := 'Refresh';
R := Sender.GetDisplayRect(Node, 2, False);
Data.RefreshButton.BoundsRect := R;
Data.RefreshButton.Visible := True;
Data.RefreshButton.Enabled := True;
Data.RefreshButton.Node := Node;
Data.RefreshButton.OnClick := RefreshbtnClick;
Sender.SetNodeData<TService>(Node, Service);
Node.CheckType := ctNone;
OnCollapsing event:
Code:
if Assigned(Node) then
begin
Child := Sender.GetFirstChild(Node);
while Assigned(Child) do
begin
Data := Sender.GetNodeData<TService>(Child);
Data.RefreshButton.Visible := False;
Child := Sender.GetNextSibling(Child);
end;
end;
OnExpanded event:
Code:
if Assigned(Node) then
begin
Child := Sender.GetFirstChild(Node);
while Assigned(Child) do
begin
Data := Sender.GetNodeData<TService>(Child);
R := Sender.GetDisplayRect(Child, 2, False);
Data.RefreshButton.BoundsRect := R;
Data.RefreshButton.Visible := True;
Child := Sender.GetNextSibling(Child);
end;
end;
gruss