Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Internet
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Colaboración Paypal con ClubDelphi

 
 
Herramientas Buscar en Tema Desplegado
  #9  
Antiguo 14-03-2015
Jontart Jontart is offline
Miembro
 
Registrado: jun 2006
Posts: 13
Poder: 0
Jontart Va por buen camino
Si que FUNCIONA.

Utilizando los eventos OnBeforeNavigate(), OnDocumentComplete() y OnNavigateComplete2() se consigue lo que quería sin artificios extraños.

Defino dos variables y creo los eventos:
Código Delphi [-]
var
  Form1: Tform1;
  CurDispatch: IDispatch;
  FDocLoaded: Boolean;

implementation

{$R *.dfm}

procedure TACDM.WebBrowser1BeforeNavigate2(Sender: TObject;
  const pDisp: IDispatch; var URL, Flags, TargetFrameName, PostData,
  Headers: OleVariant; var Cancel: WordBool);
begin
    CurDispatch := nil;
    FDocLoaded := False;
end;

procedure TACDM.WebBrowser1NavigateComplete2(Sender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
begin
   if CurDispatch = nil then
        CurDispatch := pDisp;
end;

procedure TACDM.WebBrowser1DocumentComplete(Sender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
begin
   if (pDisp = CurDispatch) then  
      begin
        FDocLoaded := True;
        CurDispatch := nil;
      end;
end;
Ahora, en el programa, después de cada acción que requiera una respuesta del servidor pongo:
Código Delphi [-]
   repeat Application.ProcessMessages until FDocLoaded;
y eso es todo.

Gracias por vuestra inestimable ayuda.
Responder Con Cita
 



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Prueba roman La Taberna 0 27-09-2012 20:32:21
Prueba del ratón ArdiIIa Humor 9 05-06-2008 20:13:10
Prueba Archer Humor 5 28-09-2005 22:46:42


La franja horaria es GMT +2. Ahora son las 02:33:29.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi