webbrowser readystate olayı

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
notname
Üye
Mesajlar: 149
Kayıt: 11 Şub 2005 02:15

webbrowser readystate olayı

Mesaj gönderen notname »

merhaba arkadaşlar, webbrowserin readystate olayı bildiğiniz üzere sayfa yüklendiğinde çalışıyor. ama google.com navigate ettiğimde documentcomplete olayı hata verio readystate_complete dahi problem vermektedir. acaba başka bi yöntem yapılabilirmi delphide? c# net için kod buldum aslında bu kod çalışır büyük ihtimal ama delphiye uyarlayamadım

Kod: Tümünü seç

private void WebBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
    {
        string url = e.Url.ToString();
        var browser = (WebBrowser)sender;

        if (!(url.StartsWith("http://") || url.StartsWith("https://")))     
        {             
            // in AJAX     
        }
        if (e.Url.AbsolutePath != this.webBrowser.Url.AbsolutePath)     
        {
            // IFRAME           
        }     
        else     
        {             
            // REAL DOCUMENT COMPLETE
            // Put my code here
        }
    }
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: webbrowser readystate olayı

Mesaj gönderen SimaWB »

OnDocumentComplete'da ReadyState = READYSTATE_COMPLETE ise sayfa yüklenmiş demektir.
There's no place like 127.0.0.1
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: webbrowser readystate olayı

Mesaj gönderen SimaWB »

C# için verilen kodun yaptığı işi yapar sanırım:

Kod: Tümünü seç

procedure TForm1.WebBrowser1DocumentComplete(Sender: TObject;
  const pDisp: IDispatch; var URL: OleVariant);
var
  UrlStr, FrameName: string;
begin
  UrlStr := String(URL);
  if (Pos('http://', UrlStr) <> 1) and (Pos('https://', UrlStr) <> 1) then
  begin
    Memo1.Lines.Add('AJAX');
  end
  else if pDisp = TWebBrowser(Sender).ControlInterface then
  begin
    Memo1.Lines.Add(Format('Sayfa yüklendi : %s%', [UrlStr]));
  end else
  begin
    FrameName := OleVariant(IWebBrowser(pDisp).Document).ParentWindow.Name;
    Memo1.Lines.Add(Format('Frame yüklendi : "%s" ', [FrameName]));
  end;
end; 
There's no place like 127.0.0.1
notname
Üye
Mesajlar: 149
Kayıt: 11 Şub 2005 02:15

Re: webbrowser readystate olayı

Mesaj gönderen notname »

hocam bu googleda ne varsa sayfanın tamamen yüklendiği kontrol edilmiyo :)
Kullanıcı avatarı
SimaWB
Üye
Mesajlar: 1316
Kayıt: 07 May 2009 10:42
Konum: İstanbul
İletişim:

Re: webbrowser readystate olayı

Mesaj gönderen SimaWB »

Ben yukarıdaki kodları deneyerek gönderdim. Problemsiz çalışıyor bende...
There's no place like 127.0.0.1
notname
Üye
Mesajlar: 149
Kayıt: 11 Şub 2005 02:15

Re: webbrowser readystate olayı

Mesaj gönderen notname »

tmmdır hocam sağoalasın, cevirdğin kısımdaki gibi işlio kodlar.
Cevapla