• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

webbrowser'da "sayfa henüz açılmadı, açılana kadar bekle" kodu

Katılım
13 Aralık 2006
Mesajlar
575
Excel Vers. ve Dili
Office 2010
Formumda kullandığım webbrowser'da net üzerinden sorgulama yapıyorum. Bu sorguları ben form üzerine yerleştirdiğim 5 commandbutton ile yapıyorum. 1. tuş ilk sayfada işlem yapıyor, 2. tuş ilk sayfanın işi bitince tarafımdan çalıştırılıyor. 3. tuş yine 2. sayfanın işi bitince yine tarafımdan çalıştırılıyor...
Ben webbrowser'ın kendi anlayabileceği bir dil ile; "1.sayfa yüklenmiş ise 2. tuşu çalıştır, sayfa henüz açılmamışsa açılana kadar bekle" veya "2. sayfa yüklenmiş ise 3. tuşu çalıştır eğer sayfa yüklenmeye devam ediyorsa açılana kadar bekle" şeklinde çalışacak bir webbrowser hayal ediyorum. Acaba bu mümkün mü? Kullandığım kodlarım aşağıda;
Kod:
Private Sub kimliktarama_Click()
    Set sezon = WebBrowser1.Document.all.Item("ctl00_O_DDL_UretimSezonu")
    sezon.Value = 8
    Set kimlik = WebBrowser1.Document.all.Item("ctl00_O_TB_TCKimlikNo")
    kimlik.Value = kimlikno
    Set ara = WebBrowser1.Document.all.Item("ctl00_O_B_Ara")
    ara.Click
End Sub
Private Sub birinciasama_Click()
        WebBrowser1.Navigate ("http://cks.tarim.gov.tr/CKS/TemelCKS/IsletmeBilgileri/KimlikBilgilerineGoreKayitArama.aspx")
     kimliktarama_Click
End Sub
Private Sub ikinciasama_Click()
    Set deneme = WebBrowser1.Document.all.Item("ctl00_O_GV_GercekAramaSonuclari_ctl02_LB_TCKimlikNo")
    deneme.Click
End Sub
Private Sub ucuncuasama_Click()
    Set hopo = WebBrowser1.Document.all.Item("ctl00_M_LB_AraziBilgileri")
    hopo.Click
End Sub
Private Sub dorduncuasama_Click()
    WebBrowser1.Navigate ("http://cks.tarim.gov.tr/CKS/TemelCKS/IsletmeBilgileri/AraziUrunlerDagilimi.aspx")
End Sub
Buradaki bütün tuşları tek tuşa bağlasammm ve sayfa geçişlerini webbrowser hatasız bir şekilde yapsa, sayfanın yoğun olduğunu anlasa, meşgulse beklese, sonra diğer aşamaları gerçekleştirse... güzel olur yani...ne diyim başka..
 
Merhaba,
Webbrowser seçeneklerinde dediğiniz mevcut.
Aşağıdaki örnekte Button1 e bastığınızda mynet i açıyor onun yüklenmesi bittikten sonra sırayla listedekileri açıyor.

Kod:
Dim x As Byte

Private Sub CommandButton1_Click()
x = 0
WebBrowser1.Navigate ("http://www.mynet.com")
End Sub


Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
x = x + 1

Select Case x
Case 1
WebBrowser1.Navigate ("http://www.milliyet.com.tr")
Case 2
WebBrowser1.Navigate ("http://www.dmi.gov.tr")
Case 3
WebBrowser1.Navigate ("http://www.bobiler.org")
End Select

End Sub
 
Ya Vallahi iyiki sizler varsınız... Sunduğunuz her iki çözüm de işliyor...Minnetarım; Sn: Recep İpek ve F1. Karaman'ın Sarıveliler ilçesinden bi isteğiniz arzunuz olursa :):):) hemen halledelim.
 
Alternatif bir çözüm olsun ( ben çok kullanırım ) :

Navigate ve Click olaylarından sonra, tarayıcınız sayfa yüklemesini henüz bitirmediyse busy ( meşgul) özelliği ile de, denetim kısır bir döngü içine alınabilir. Ta ki meşguliyet değeri False dönene kadar.

Kod:
do while webbrowser1.busy:loop
 
Geri
Üst