Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Position im Treeview auslesen (https://www.delphipraxis.net/192536-position-im-treeview-auslesen.html)

JoBoCAD 27. Apr 2017 08:32

Position im Treeview auslesen
 
Hallo Zusammen,

wie lässt sich die aktuelle Position in einem TreeView auslesen
und in eine Datei abspeichern.

Später soll aus dieser Datei die Position gelesen und zugewiesen werden.

Für eure Hilfe/Anregungen bin ich euch sehr dankbar.

Gruß
Joachim

TiGü 27. Apr 2017 09:34

AW: Position im Treeview auslesen
 
Dein Problem ist zu allgemein beschrieben. Bitte genauer werden.
Sinnvoll gekürzter Quelltext ist immer hilfreich.

JoBoCAD 27. Apr 2017 10:03

AW: Position im Treeview auslesen
 
Mein TreeView ist wie folgt aufgebaut

Verbindungselemente
Schraube
DIN 931
DIN 933
Mutter
DIN 934
DIN 935
...

Beim Verlassen des Treeviews war beispielsweise
der Eintrag DIN 935 angeklickt.

Nach dem Neustart des Programms möchte ich dass
beim Aufruf des TreeViews genau die Position aktiviert ist.


Gruß
Joachim

Jumpy 27. Apr 2017 10:15

AW: Position im Treeview auslesen
 
Mal ein Ansatz:

Delphi-Quellcode:
//Speichern:
for i:= 0 to tv.Items.Count-1 do
  if tv.Items[i].Selected then
    SaveSomewhere(tv.Items[i].Caption);


//Laden
var Element:String;
    i:integer;
begin
  Element:=LoadFromSomewhere;
  for i:= 0 to tv.Items.Count-1 do
    if tv.Items[i].Caption=Element then
       begin
       tv.Items[i].Selected:=true;
       tv.Items[i].Expanded:= true;
       break;
       end;
end;

JoBoCAD 27. Apr 2017 10:40

AW: Position im Treeview auslesen
 
wow - hat geklappt
Das war genau das was ich wollte
Herzlichen Dank
Gruß
Joachim

nahpets 27. Apr 2017 10:44

AW: Position im Treeview auslesen
 
Unter Delphi 7 hat ein TreeView die Eigenschaft Selected für den ausgewählten Zweig.

Selected wiederum hat die Eigenschaft AbsoluteIndex (ein Integerwert).

Mit TreeView.Items[i].Selected := True kann man einen Eintrag auswählen.

Ungetestet müsste eigentlich sowas in der Art gehen:
Delphi-Quellcode:
procedure TfmMain.FormClose(Sender: TObject; var Action: TCloseAction);
begin
  SaveIntegerToConfig('AbsoluteIndex',TreeView.Selected.AbsoluteIndex);
end;

procedure TfmMain.FormCreate(Sender: TObject);
begin
  TreeView.Items[ReadIntegerFromConfig('AbsoluteIndex')].Selected := True;
end;


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