Ir al contenido


Foto

[RESUELTO] Tomar dato de un TTreeView


  • Por favor identifícate para responder
3 respuestas en este tema

#1 TiammatMX

TiammatMX

    Advanced Member

  • Miembros
  • PipPipPip
  • 1.750 mensajes
  • LocationUniverso Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Ciudad de México\Xochimilco\San Gregorio Atlapulco\Home

Escrito 12 marzo 2010 - 10:00

jejejejeje  Hay que avanzarle..., así es ésto de los aviones, que vuelen y no se caigan...

Bueno el caso es que ya tengo un TTreeView con datos, todos ellos el nombre de una dependencia del GDF, y ahora, debo tomar un texto señalado y buscarlo en una tabla. ¿Alguna orientación rápida, por favor?
  • 0

#2 enecumene

enecumene

    Webmaster

  • Administrador
  • 7.419 mensajes
  • LocationRepública Dominicana

Escrito 12 marzo 2010 - 10:39

Fácil, debes hacer uso de la propiedad Data de los nodos del TreeView, donde puedes apuntar un ID u otro campo de la tabla. En mi ejemplo del hilo anterior podrás ver su uso ;)
  • 0

#3 andres1569

andres1569

    Advanced Member

  • Miembro Platino
  • PipPipPip
  • 431 mensajes

Escrito 12 marzo 2010 - 10:41

Ese TreeView me suena  :smiley:

Si la clave para buscar en dicha tabla es un número entero, puedes realizar un truco que consiste en almacenar en el nodo el valor numérico correspondiente. Al crear el TreeView, emplea la función AddChildObject n vez de AddChild, y como último parámetro le pasas el valor entero, esta función espera ahí un puntero, así puedes moldearlo de esta forma:

AddChildObject(NodoPadre, 'Texto', Pointer(ValorClave));

Luego, cuando el usuario clickee sobre dicho nodo, en el evento OnClick obtienes el nodo seleccionado mediante TreeView.Selected y accedes al valor almacenado anteriormente mediante su propiedad Data.



delphi
  1. procedure TfrmPrncpl.TreVewArblArsClick(Sender: TObject);
  2. var
  3.   Valor : Integer;
  4. begin
  5.   Valor := Integer(TreVewArblArs.Selected.Data);
  6.   // Buscar dicho valor en el DataSet
  7.  
  8. end;


  • 0

#4 TiammatMX

TiammatMX

    Advanced Member

  • Miembros
  • PipPipPip
  • 1.750 mensajes
  • LocationUniverso Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Ciudad de México\Xochimilco\San Gregorio Atlapulco\Home

Escrito 12 marzo 2010 - 10:52

¡¡EXCELENTEEEE!!, y siguiendo sus consejos, amigos, queda así...



delphi
  1. procedure TfrmPrncpl.TreVewArblArsClick(Sender: TObject);
  2. begin
  3.   dtamdlDts.ADOQryEdcn.Active := False;
  4.   dtamdlDts.ADOQryEdcn.Parameters.ParamByName('Nmbr').Value := TreVewArblArs.Selected.Text;
  5.   dtamdlDts.ADOQryEdcn.Active := True;
  6. end;



Y sí, Andrés..., es "ése" TTreeView... jejejejeje    :cheesy: :cool: :tongue:
  • 0




IP.Board spam blocked by CleanTalk.