Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Datensatz im TreeView finden (https://www.delphipraxis.net/53357-datensatz-im-treeview-finden.html)

IngoH 14. Sep 2005 20:21

Datenbank: Access • Version: 2000 • Zugriff über: Jet 4.0

Datensatz im TreeView finden
 
Hallo,

habe meine DB in den TreeView eingelesen. Mit folgender Procedure finde ich auch den Datensatz. Allerdings klappt das nur wenn es keine doppelten Childs gibt. Denn dann findet er den ersten Datensatz mit dem Namen im TreeView.

Delphi-Quellcode:
 sNodeText := DBTreeView1.Selected.Text;
 if DBTreeView1.Selected <> nil then
   begin
     //showmessage(sNodeText);
     tblFolder.Locate('FolderName', sNodeText, []);
     sParentID := MainForm.frmMain.tblFolder.FieldValues['ID'];
     //showmessage(sParentID);
   end;
'FolderName' ist die Bezeichnung des Node. (nicht eindeutig)
'ID' ist eine eindeutige ID, aber danach kann ich im Tree nicht suchen, da ID ja nicht angezeigt wird.

Edit: Ich möchte die ID wissen des aktuell markierten Nodes (selected).
Danke.

Gruß
Ingo

marabu 14. Sep 2005 20:40

Re: Datensatz im TreeView finden
 
Hallo Ingo,

wenn du den Datensatz suchst, der zum selektierten Knoten im Baum gehört, und wenn du ID in der Data property des Knoten mitführst, dann kannst du so suchen:

Delphi-Quellcode:
var
  id: integer;
begin
  if Assigned(DBTreeView1.Selected) then
  begin
    id := Integer(DBTreeView1.Selected.Data);
    tblFolder.Locate('ID', id, []);
    // ...
  end;
Die Idee sollte rüberkommen, auch wenn ich das jetzt nur so in den Beitragseditor getippt habe.

Grüße vom marabu

IngoH 14. Sep 2005 21:11

Re: Datensatz im TreeView finden
 
Jau,

:wall: Manchmal sieht man den Baum vor lauter Wälder nicht.

Danke

Das funzt:

Delphi-Quellcode:
  if DBTreeView1.Selected <> nil then
   begin
     sParentID := tblFolder.FieldValues['ID'];
     id := Integer(DBTreeView1.Selected.Data);
     tblFolder.Locate('ID', id, []);
   end;


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