TreeView .Locate
Boa Tarde Pessoal!
Sou novo na área de programação e estou com uma dúvida que pode ser básica mas eu não estou conseguindo resolver.
Eu tenho um TreeView no meu Form, ele está funcionando blz, mas não estou conseguindo excluir as informações do banco no momento em que se é clicado o botão excluir... Ele exclui sempre o primeiro registro da tabela, e não o registro que eu selecione, sei que preciso fazer um ´locate´ para que no momento da seleção seja procurado o registro correspodente, mas não estou conseguindo.
Será que alguém pode me ajudar????
Edivaldo André Pereira
Sou novo na área de programação e estou com uma dúvida que pode ser básica mas eu não estou conseguindo resolver.
Eu tenho um TreeView no meu Form, ele está funcionando blz, mas não estou conseguindo excluir as informações do banco no momento em que se é clicado o botão excluir... Ele exclui sempre o primeiro registro da tabela, e não o registro que eu selecione, sei que preciso fazer um ´locate´ para que no momento da seleção seja procurado o registro correspodente, mas não estou conseguindo.
Será que alguém pode me ajudar????
Edivaldo André Pereira
Edivaldo_ap
Curtidas 0
Respostas
Rjun
25/07/2005
Eu não sei que tipo de informações você esta exibindo. Vamos supor que seja uma tabela de produtos e você esteja exibindo o nome do produto na treeview. Você teria que pegar o item selecionado no momento em que o botão de excluir é pressionado e dar um locate.
Na minha opinião, utilizar estrutura em árvoce para fazer edição de registros não é muito bom, ja que você teria que fazer tudo via código.
qryProduto.Locate(´Nome´, [texto], []); qryProduto.Delete;
Na minha opinião, utilizar estrutura em árvoce para fazer edição de registros não é muito bom, ja que você teria que fazer tudo via código.
GOSTEI 0
Thiago Vidal
25/07/2005
Eu costumo fazer assim:
Enquanto vc está montando o TreeView, vc pode definir a propriedade Data para o Bookmark atual do DataSet... e em seguida, vc só precisa recuperá-la.
Por Exemplo... enquanto vc monta o Tree
Claro que seria bom fazer algumas validações, mas o básico é isso aí.
Enquanto vc está montando o TreeView, vc pode definir a propriedade Data para o Bookmark atual do DataSet... e em seguida, vc só precisa recuperá-la.
Por Exemplo... enquanto vc monta o Tree
procedure TForm1.MontaTree; var n: TTreeNode; begin ClientDataSet1.First; while not ClientDataSet1.Eof do begin n := TTreeNode.Create(TreeView1.Items); [b] n.Data := ClientDataSet1.GetBookmark;[/b] n.Text := ClientDataSet1.Fields[0].Text; TreeView1.Items.Add(n, n.Text); ClientDataSet1.Next; end; end; procedure TForm1.TreeView1Click(Sender: TObject); begin ClientDataSet1.GotoBookmark(TreeView1.Selected.Data); ClientDataSet1.Delete; TreeView1.Selected.Delete; end;
Claro que seria bom fazer algumas validações, mas o básico é isso aí.
GOSTEI 0
Edivaldo_ap
25/07/2005
Eu acho que é isso mesmo que estou procurando, vou testar...
Obrigado, Thiago Vidal.
Edivaldo André Pereira
Obrigado, Thiago Vidal.
Edivaldo André Pereira
GOSTEI 0