Ver Mensaje Individual
  #6  
Antiguo 10-08-2010
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Reputación: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola mrnovice.

No conozco el componente jvchecktreeview, pero supongo que no debe ser muy distinto al TTreeView.

Pareciera que el error esta en estas líneas:
Código Delphi [-]
    Child:= JvCheckTreeView1.Items.AddChild(Node,'<'+Qmodulo.fieldbyname('modulo').AsString+'>');
    Child.Data:=pointer(Qmodulo.FieldByName('modulo').AsString);
Hice una prueba simple cargando un TreeView con la tabla Country (DBDEMOS). Creo que lo que está en negrita te va a dar una pauta
para hallar la solución.
Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  Root, Child: TTreeNode;
  Str: string;
begin
  QModulo.First;
  while not QModulo.Eof do
  begin
    Root:= TreeView1.Items.Add(nil,'<'+Qmodulo.fieldbyname('Name').AsString+'>');
    Child:= TreeView1.Items.AddChild(Root,QModulo.FieldByName('Capital').AsString);
    Str:= Qmodulo.FieldByName('Capital').AsString;
    Child.Data:= @Str; // ó igualmente: Addr(Str) 
    Root.HasChildren:=True;
    QModulo.Next;
  end;
end;

Para desreferenciar y convertir usá:
Código Delphi [-]
   string(Nodo.Data^)

Saludos.

Última edición por ecfisa fecha: 10-08-2010 a las 19:43:20.
Responder Con Cita