GARANTIR DESCONTO

Fórum Selecionar um no via programação (*AJUDA*) #446882

27/06/2013

0

Bom Dia
Estou com o seguinte problema estou desenvolvendo uma aplicação com o componente TreeView em Delphi 7 onde tenho que selecionar uma nó via programação. Eu já tenho a árvore pronta ela é gerada em tempo de execução e quando ela é gerada tenho que dar a opção do usuário escolher qual nó ele quer visualizar digitando o numero do indexe do nó e apetado o botão.
assim Ficou o inicio do Código.
procedure TfVisualizador.BitBtn1Click(Sender: TObject);
var
  TrVindex: Integer;
begin

  TrVindex := StrToInt(edtNumPagina.text); //Guarda o valor do index convetrndo para Inteio
  if edtNumPagina.Text = '' then
  begin
    ShowMessage('Digite o número da página!');
    //ShowMessage('');
    Exit;
  end;

  if TrVindex > TrV.Items.Count then
  begin
    ShowMessage('página não Cadastradaou!');
    StBar.Panels[3].Text:= 'página '+IntToStr(TrVindex)+' não encontarda';
    Exit;
  end;

  if TrV.Items.Item[TrVindex] = TrVindex then// Aqui já não Funciona :(
  begin
    
    TrV.Items[TrVindex];
    StBar.Panels[3].Text:= 'página encontarda'+IntToStr(TrVindex);
    AcroPDF.LoadFile(PChar(DM.TParCaminho.AsString)+nomeDoArquivo);
  end;

Auguem pode me Ajudar?
Eduardo Mendonça

Eduardo Mendonça

Responder

Posts

27/06/2013

Marcos Saffran

Bom Dia
Estou com o seguinte problema estou desenvolvendo uma aplicação com o componente TreeView em Delphi 7 onde tenho que selecionar uma nó via programação. Eu já tenho a árvore pronta ela é gerada em tempo de execução e quando ela é gerada tenho que dar a opção do usuário escolher qual nó ele quer visualizar digitando o numero do indexe do nó e apetado o botão.
assim Ficou o inicio do Código.
procedure TfVisualizador.BitBtn1Click(Sender: TObject);
var
  TrVindex: Integer;
begin

  TrVindex := StrToInt(edtNumPagina.text); //Guarda o valor do index convetrndo para Inteio
  if edtNumPagina.Text = '' then
  begin
    ShowMessage('Digite o número da página!');
    //ShowMessage('');
    Exit;
  end;

  if TrVindex > TrV.Items.Count then
  begin
    ShowMessage('página não Cadastradaou!');
    StBar.Panels[3].Text:= 'página '+IntToStr(TrVindex)+' não encontarda';
    Exit;
  end;

  if TrV.Items.Item[TrVindex] = TrVindex then// Aqui já não Funciona :(
  begin
    
    TrV.Items[TrVindex];
    StBar.Panels[3].Text:= 'página encontarda'+IntToStr(TrVindex);
    AcroPDF.LoadFile(PChar(DM.TParCaminho.AsString)+nomeDoArquivo);
  end;

Auguem pode me Ajudar?


Maginal,

a comparação do if está sendo feita com tipos diferentes e como você já testou a quantidade de itens recomendo que retire o if, deixando apenas:

Trv.Items[TrVindex - 1] (subtrai 1 aqui pois o índice começa em zero)
StBar.Panels[3].Text := 'página encontrada ' + IntToStr(TrVindex);
AcroPDF.LoadFile(PChar(DM.TParCaminho.AsString) + nomeDoArquivo);
Responder

Gostei + 0

28/06/2013

Eduardo Mendonça

Ok eu vou testa agora
Responder

Gostei + 0

28/06/2013

Eduardo Mendonça

Bom Dia!

Marcos Alfredo Ficou Beleza aqui O código funcionou e eu também fiz umas mudanças e funcionou certinho

Obrigado!
Responder

Gostei + 0

25/09/2013

José

Como a duvida já foi solucionada, estou finalizando este tópico.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar