Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   TreeView dato oculto (https://www.clubdelphi.com/foros/showthread.php?t=51667)

ascrnet 23-12-2007 17:46:33

TreeView dato oculto
 
hola

aqui estoy otra vez colegas, con otra duda sobre el treeview. este componente tiene alguna opcion de manejar un numero oculto para cada item. :confused:. esto tengo programador :

Código:

    IBDatabase1.DatabaseName :='DBATARI.FDB';
    IBDatabase1.Params.Add('user_name=SYSDBA');
    IBDatabase1.Params.Add('password=masterkey');
    IBDatabase1.Params.Add('sql_role_name=3');
    IBQuery1.Close;
    IBQuery1.SQL.CLEAR;
    IBQuery1.SQL.ADD('SELECT ID,NOMBRE FROM GAMES');
    IBQuery1.open;
    Edit1.Text :=  IBQuery1.Fields[1].Text;
    root := TreeView1.Items.AddChild(root,IBQuery1.Fields[1].Text);
    root.ImageIndex := 2 ;
    root.SelectedIndex := 2 ;

la idea es que el campo NOMBRE aparesca en el treeview y el ID tambien pero oculto , ya que lo necesito para despues hacer una busqueda por el NOMBRE "el campo ID" seleccionado en el treeview.

saludos

JXJ 23-12-2007 22:00:13

yo estoy empezando con el uso de records.

asi dijamos
del record solo insertas, como un nodo, los campos que quieres
y dejas sin insertar el id , pero que es accesible atraves de la estrucutura
record.

droguerman 24-12-2007 01:24:07

los treenode tienen una propiedad llamada data, usadla con sabiduria

ascrnet 24-12-2007 02:09:08

Cita:

Empezado por droguerman (Mensaje 254226)
los treenode tienen una propiedad llamada data, usadla con sabiduria

si la vi, pero el tipo de dato de esta propiedad yo la desconosco :confused: como la puedo manejar ?

y eso de usala con sabiduria , tiene algun problema esta propiedad :confused:

saludos y gracias por sus respuestas

david_uh 24-12-2007 23:57:35

ya mira la propiedad data es lo maximo ahi puedes almacenar incluso informacion de un registro completo,, no tengo a la mano delphi pero puedes consultar en la ayuda de delphi ahi hay un ejemplo de lo que te menciono

pero si solo deseas guardar un dato entonces estas limitado a que sea un entero nada mas
Código Delphi [-]
pointer(listview.data)
// y lo recuperas
r:= integer(listview.data)
no recuerdo muy bien pero creo que con esto puedes empezar
Espero te sirva Daludos

ascrnet 25-12-2007 22:45:30

Cita:

Empezado por david_uh (Mensaje 254314)
ya mira la propiedad data es lo maximo ahi puedes almacenar incluso informacion de un registro completo,, no tengo a la mano delphi pero puedes consultar en la ayuda de delphi ahi hay un ejemplo de lo que te menciono

pero si solo deseas guardar un dato entonces estas limitado a que sea un entero nada masCódigo Delphi [-]pointer(listview.data)
// y lo recuperas
r:= integer(listview.data)

no recuerdo muy bien pero creo que con esto puedes empezar
Espero te sirva Daludos

muchas gracias david_uh por el datillo.

para agregarlo a cada nodo
Código:

          ra := TreeView1.Items.AddChild(roota,IBQuery1.Fields[1].Text);
          ra.ImageIndex := 2 ;
          ra.SelectedIndex := 2 ;
          ra.Data:=pointer(IBQuery1.FieldByName('ID').AsInteger);

y despues seleccionado el nodo

Código:

IBQuery1.SQL.ADD('SELECT * FROM GAMES WHERE ID ='+IntToStr(integer(TreeView1.Selected.Data)));
aqui dejo como lo use por si alguien tambien tiene el mismo problema :D

saludos


La franja horaria es GMT +2. Ahora son las 21:19:06.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi