Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   FMX: TreeViewItem ScrollToItem (https://www.delphipraxis.net/200972-fmx-treeviewitem-scrolltoitem.html)

Christoph Schneider 12. Jun 2019 14:02

FMX: TreeViewItem ScrollToItem
 
Ich möchte ein TreeViewItem in den sichtbaren Bereich scrollen. Leider fand ich dazu in der TTreeView keine geeignete Methode.

Meine eigene Lösung funktioniert offensichtlich auch nicht in allen Fällen, denn die Item.Position stimmt nicht immer.
Code:
procedure TfmxMain.MakeItemVisible(Item: TTreeViewItem);
begin
  trvMyTreeView.ViewportPosition :=
    TPointF.Create(min(Item.Position.X - trvSlideGroups.ClientWidth / 2, 0),
      min(Item.Position.Y - trvSlideGroups.ClientHeight / 2, 0));
end;
Hat jemand eine Idee, wie man dieses Problem lösen kann?

Christoph Schneider 24. Jun 2019 15:55

AW: FMX: TreeViewItem ScrollToItem
 
Nach vertiefem Studium von FMX.TreeView fand ich eine einfache Lösung:
Code:
procedure TfmxMain.MakeItemVisible(Item: TTreeViewImageItem);
begin
  Item.Deselect;
  Item.Select;
end;
Dadurch wird die interne methode TCustomTreeView.UpdateSelection aufgerufen, die in der Folge das neu selektierte Item in den sichtbaren Bereich scrollt.


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