Einzelnen Beitrag anzeigen

Natia

Registriert seit: 19. Mai 2017
3 Beiträge
 
#14

AW: TButton in VirtualTreeView einfügen

  Alt 22. Mai 2017, 15:21
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
Vector
  Mit Zitat antworten Zitat