COMO CRIAR UM NAVEGADOR DE INTERNET EM DELPHI

Adicionado em 09/08/2024

Compartilhar em:

Olá pessoal!

Hoje vamos mostrar um exemplo bem simples de como criar um navegador (browser) de internet em Delphi.

Primeiramente, abra seu Delphi e peça uma nova aplicação VCL.

Adicione os componentes TEdgeBrowser, TPanel, 1 TEdit, 2 TButton e 3 TBitBtn.

Veja que vamos utilizar aqui o TEdgeBrowser para fazer a exibicação dos sites, visto que o componente que era mais utilizado antigamente, o TWebBrowser, está obsoleto.

Você pode escolher o design que preferir para seu browser.

No nosso caso, alteramos a propriedade Align do TPanel para alBottom e do TEdgeBrowser para alClient. Removemos o Caption do TPanel e adicionamos os botões e edit dentro do panel.

Design do form do navegador

Veja que ao invés de adicionar um texto, adicionamos ícones para os botões de voltar, avançar e atualizar a página. Para isso, utilizamos o botão TBitBtn que fornece está possibilidade, adicionando o ícone através da propriedade Glyph no Object Inspector do botão bitbtn.

Para o TEdit mudamos a propriedade para uma página inicial que desejamos adicionar, mudamos o botão do primeiro TButton para Navegar e do segundo para Ver HTML.

Agora, dê dois cliques sobre o botão Navegar, e adicione o seguinte código:

No código acima, precisamos garantir que o https:// está adicionado ao endereço.

Agora nos botões Voltar, Avançar e Atualisar, adicione os seguintes códigos:

Para avançar:

E para atualizar:

Agora vamos adicionar a opção de visualizar o HTML. Para isso vamos criar um novo Form.

Clique em File/New/VCL Form - Delphi como na imagem abaixo:

Criar novo Form no Delphi

No novo Form, adicione um TMemo e um TPopUpMenu.

Clique sobre seu novo Form e mude o Caption para Código HTML do Site.

Clique sobre o Memo, vá até o Object Inspector e mude a propriedade Align para alClient e remova o do Memo na propriedade Lines.

Agora dê dois cliques sobre o TPopUpMenu, e no primeiro botão que aparece na janela, mude o nome para Selecionar Todo Texto e pressione Enter. No segundo botão mude o Caption para Copiar Texto.

O seu Form deve parecer com o seguinte:

Segundo Form para ver HTML

Agora dê dois cliques sobre o botão Selecionar Todo Texto e adicione o seguinte código:

Agora dê dois cliques no botão Copiar Texto e adicione o seguinte código:

Para copiar o texto, temos que fazer uso da biblioteca ClipBrd. Desta forma, vá até a parte superior da sua unit e na clausula uses adicione a biblioteca ClipBrd.

Volte para o Form, clique sobre o Memo e no Object Inspector procure pela propriedade PopupMenu. Clique no menu dropdown e selecione o componente TPopUpMenu.

Agora salve todo o seu projeto e se assegure de salvar as duas units do Form principal e do novo Form que criamos na mesma pasta.

Aqui não modificamos os nomes padrões para estas units, ou seja, salvamos a primeira unit como Unit1.pas e a segunda como Unit2.pas.

Você pode fechar o novo Form que criamos, voltando para o nosso Form principal.

Vá para o código do seu Form (Unit1) e na parte superior na cláusula uses, adicione ao final o nosso novo form, ou seja, Unit2.

Volte para o Form principal e dê dois cliques sobre o botão Ver HTML e adicicione o seguinte código:

Agora, volte ao Form principal, selecione o componente TEdgeBrowser e na barra de Events do Object Inspector, dê dois cliques sobre o Evento OnExecuteScript.

Dentro do procedimento criado para este evento, adicione o seguinte código:

Agora, volte a parte superior do seu código e adicione a biblioteca System.NetEncoding; para poder utilizar a função TNetEncoding.

Volte para o Form principal, selecione o seu EdgeBrowser, vá até o Events no Object Inspector e selecione dê dois cliques sobre o evento OnNavigationComplete. Dentro do procedimento criado, adicione o seguinte código:

Com isso, atualizamos o endereço da página sendo navegada dentro do nosso campo de navegação do Edit1.

Pronto, agora seu navegador está pronto. Você pode salvar e rodar o seu programa.

Porém, você provavelmente não irá conseguir navegar em nenhum site ainda.

Isso acontece porque o browser usando o componente TEdgeBrowser depende de uma DLL específica para navegação. Esta DLL que vai garantir o acesso correto ao site.

Você pode baixar AQUI o DLL necessário. Após baixar o DLL adicione ele na mesma pasta onde se encontra o executável do seu programa.

Se você quiser um executável único que já contém toda informação necessária para rodar sem ter que ficar fornecendo o arquivo DLL como adjacente, você pode incluir o DLL dentro do seu executável utilizando um arquivo RES como mostramos em nosso outro exemplo AQUI.

Agora, se você rodar o seu programa novamente, será possível acessar os sites da internet como mostrado a seguir:

Navegador em Delphi