Criando Navegar em Delphi - Parte III

Veja nesta Quick como criar um navegador em delphi


Olá à todos , neste artigo iremos dar continuidade a codificação do nosso webbrowser. Devido a alguns pedidos vou iniciar tratando da codificação da Action “Ir” de forma a explicá-la um pouco melhor:

O escopo do código foi o seguinte:

Begin

 Navegador.Navigate(cbUrl.Text);

   if CDSUrl.Locate('URL', cbUrl.Text, [loCaseInsensitive]) then

Exit // a url já esta gravada, ativa!

  else

  GerenciarURL; // A Url não está gravada

  CarregaCombo; // Atualiza a url no combo

end;

Vejam que a clausula “if” verifica se a url digitada já se encontra gravada no ClientDataSet, através do comando “locate” e caso não esteja dispara-se os comandos que seguem. O tratamento “loCaseInsensitive” fará com que durante a análise, sejam ignoradas as alterações de Caixa alta ou baixa na digitação. Os comandos “GerenciarURL” ou “CarregaCombo” serão visto logo adiante.

Declare duas procedures no escopo private da sua aplicação, conforme colocado abaixo:

  private

     procedure CarregaCombo;

     procedure GerenciarURL;

Aqui vai uma dica: Com o cursor colocado em qualquer lugar da implementação das procedures, aperte Ctrl+Shift+C, assim, o Delphi implementa as procedures (functions, properties,...) de maneira extremamente simples e prática. Vamos então à implementação do código CarregaCombo, que será responsável por alocar o endereço digitado numa espécie de mini-histórico do ClientDataSet e será exibido no Combobox responsável por servir de Barra de Endereços.

procedure TfrmBrowser.CarregaCombo;

var

  OldURL: string;

begin

  OldURL := cbUrl.Text; // guarda-se a url digitada

  cbUrl.Clear; // limpa o combo

  CDSUrl.Open;

  CDSUrl.First;

  while not CDSUrl.Eof do // carregamos o combo

  begin

cbUrl.AddItem(CDSUrlURL.Value, nil);

CDSUrl.Next;

  end;

  cbUrl.Text := OldURL; // restauramos a url digitada

end;

Agora a procedure GerenciarURL, que será incumbida de  realizar o controle do carregamento do combobox e definir o tamanho do mesmo, no nosso exemplo serão aceitos somente cinco endereços salvos e a cada vez que surgir um novo, o mais antigo será substituído.

procedure TfrmBrowser.GerenciarURL;

begin

  with CDSUrl do

  begin

Open;

CDSUrl.First;

// so permitimos 5 urls no cds

if CDSUrl.RecordCount = Numero_Maximo_de_URL then

begin

 // apagamos a url mais antiga

// edit;

Delete;

// sempre adicionamos a nova

// edit;

Append;

CDSUrlURL.Value := cbUrl.Text;

Post;

close;

end;

  end;

end;

 

Estes são os verdadeiros pontos  chave da aplicação, uma vez que serão responsáveis por atribuir um caráter mais rebuscado para o browser. Estudar estes comandos é, sem duvida, um bom exercício para os desenvolvedores iniciantes.

No momento fico por aqui, no próximo artigo veremos a implementação dos demais comandos. Grande abraço e até a próxima!

Jefferson Araújo

Contato: tecjefferson@hotmail.com

Artigos relacionados