Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Andreatti

[Resolvido] Web Broser feito em Delphi - Erros

Recommended Posts

Boa noite galera do imaster.

Venho eu aqui, humildimente pedir vossa ajuda.

Bom. Sou inciante em programaçao e to tentando criar um webBroswer, para fins de aprendizado e busca de conhecimento sobre as ferramentas que o glorioso delphi disponibiliza.

 

Eu consegui criar o browser, porem ainda tem alguns problemas que eu queria resolver e ainda nao consegui achar a soluçao, como por exemplo:

Eu digito www.orkut.com.br e clico em GO, ele acessa o orkut e eu consigo logar. Porem ... se eu clicar em alun link.. ou ate msm enquanto a pagina do orkut carrega... ele nao mostra o link para o qual ele foi redirecionado. Continua sempre o endereço que eu digitei... Ou seja... se eu for no google e pesquisar: Naruto Project eu consigo achar e acessar o site. Porem msm apos eu entrar no site ... continua la.... www.google.com.br.

 

Eu tentei resolver isso usando o meuconponente.LocationURL soh que nao deu mt certo, pois o processo de compila do delphi é mais rapido do que o carregar da pagina... e ele pega o endereco que estava aberto na hora do clique.

 

 

Segue meu codigo.(agora eu retirei essa parte do .locationURL)

 

unit Nav;

interface

uses
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
 Dialogs, StdCtrls, ExtCtrls, OleCtrls, SHDocVw, sSkinManager, Menus, jpeg;

type
 TfmNav = class(TForm)
   Panel1: TPanel;
   btnBack: TButton;
   btnRefresh: TButton;
   Button3: TButton;
   edtEnd: TEdit;
   btnForwrd: TButton;
   webPage: TWebBrowser;
   MainMenu1: TMainMenu;
   File1: TMenuItem;
   File2: TMenuItem;
   About1: TMenuItem;
   Sair1: TMenuItem;
   Help1: TMenuItem;
   Verso1: TMenuItem;
   Desenvolvedor1: TMenuItem;
   Configuraes1: TMenuItem;
   btnHome: TButton;
   cbFavorite: TComboBox;
   Image1: TImage;
   procedure btnRefreshClick(Sender: TObject);
   procedure btnForwrdClick(Sender: TObject);
   procedure btnBackClick(Sender: TObject);
   procedure btnGoClick(Sender: TObject);
   procedure FormShow(Sender: TObject);
   procedure Sair1Click(Sender: TObject);
   procedure btnHomeClick(Sender: TObject);
 private
   { Private declarations }
 public
   { Public declarations }
 end;

var
 fmNav: TfmNav;

implementation

{$R *.dfm}

procedure TfmNav.btnBackClick(Sender: TObject);
begin
 webPage.GoBack;
end;

procedure TfmNav.btnForwrdClick(Sender: TObject);
begin
 webPage.GoForward;
end;

procedure TfmNav.btnHomeClick(Sender: TObject);
begin
 webPage.Navigate('www.google.com.br');
 edtEnd.Text := (webPage.LocationURL);
end;

procedure TfmNav.btnRefreshClick(Sender: TObject);
begin
 webPage.Refresh;
end;

procedure TfmNav.btnGoClick(Sender: TObject);
begin
 webPage.Navigate(edtEnd.text);
 fmNav.Caption := (' Navegador Basico - By Andreatti');
end;

procedure TfmNav.FormShow(Sender: TObject);
begin
 webPage.Navigate('www.google.com.br');
 edtEnd.Text := ('www.google.com.br');
end;

procedure TfmNav.Sair1Click(Sender: TObject);
begin
 close;
end;

end.

 

 

Espero que tenhan entendido minha duvida.. E fazendo isso gostaria tmb de que o nome do site(ou a pagina aberta) aparece na minha barra de titulos do browser...

Soh funciono comigo usando o google... ele aprecia no caption do form...

 

 

Agradeço desde jha...

Uga

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para adicionar a URL do site no seu edit, adicione o seguinte código no evento "OnDocumentComplete" do TWebBrowser:

 

procedure TfmNav.webPageDocumentComplete(Sender: TObject;
 const pDisp: IDispatch; var URL: OleVariant);
begin
edtEnd.Text := URL;
end;

 

 

Para exibir o título da página no seu form, adicione no evento "OnTitleChange" do webbrowser:

 

procedure TfmNav.webPageTitleChange(Sender: TObject;
 const Text: WideString);
begin
Self.Caption := Text;
end;

 

 

 

Espero que isso te ajude!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Resolveu sim... Otimo..

Agora por exemplo..se eu colcasse nessa parte:

 

Para exibir o título da página no seu form, adicione no evento "OnTitleChange" do webbrowser:

 

procedure TfmNav.webPageTitleChange(Sender: TObject;
 const Text: WideString);
begin
Self.Caption := Text;
end;

 

 

Se eu mudasse o Self.caption para:

 

procedure TfmNav.webPageTitleChange(Sender: TObject;
const Text: WideString);
begin
TForm.Caption := Text;
end;

 

Funcionaria?? Eh porque eu vo ficar sem delphi aqui para fazer uns testes por uns dias... so deu tempo de testar o codigo que voce me passou.

Agradeço se voce me responder nvoamente.

 

Obrigado desde jah.

 

OBS: Eu nao acredito que eu nao vi escrito WEB BROSER no titulo do post. -.-"

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.