Konu Araçları | Konu Seçenekleri | Gösterim Stili
Tarih
20/03/2010 09:36
Konu Sahibi
ozanakkaya
Yorumlar
5
Okunma
2767
Konuyu Oyla:
  • Derecelendirme: 0/5 - 0 oy
  • 5
  • 4
  • 3
  • 2
  • 1

Derecelendirme: 0/5 - 0 oy
Kullanici Avatari

ozanakkaya

Kurucu
OZ.... AK....
 41
 11.597
 469
 29/01/2008
 Denizli
 Memur
 Ofis 2010 32 Bit
 Bugün,18:27

Kod:
http://www.kod27.com/

SİTESİNDEN ALINTIDIR.


WEBBROWSER KONTROLÜ:

İnternet hemen hemen tüm bilgisayar kullanıcıları için vazgeçilmez bir ortamdır. Visual basic 5,0 sürümü ile internet ortamına geçiş yapmıştır. Visual basic 6,0 sürümü ile de yaygın bir uygulama aracına dönüşmüştür. İlk olarak webbrowser kontrolünü açıklamaya çalışacağım.

Çoğunuzun bildiği gibi internet gezginleri Html (Hypertext Markup Language ) dilinde yazılmış kodları derleyerek bize Web sayfası olarak sunar. Ençok kullanılan gezginler Internet Explorer ve NetScape Navigator programlarıdır. Webbrowser kontrolü ile bu gezginler gibi kendi programımızı yapabiliriz. Tasarlayacağımız program içerisine bu kontrol nesnesini ekleyerek programımızı zenginleştirebiliriz. Örnek bir proje uygulaması da göndererek ne şekilde bir ihtiyacı karşıladığını inceleyebilirsiniz. Bilgisayarınızda internet explorerr’ in 3 veya daha sonraki sürümü mevcut ise bu kontrol nesnesine sahipsiniz demektir.
Şimdi Visual basic de bir proje açarak işe başlayalım. Webbrowser kontrolünü eklemek için Ctrl+T kısa yol tuşu veya ProjectComponents menü komutu ile Components ileti penceresini açarak, bu ekran içerisinden Microsoft Internet Controls seçeneğini seçerek araç kutunuza dahil edebilirsiniz. Webbrowser controlünü dahil ettikten sonra formunuzun üzerine yerleştirin.

1- NAVİGATE METODU : Webbrowser kontronünün en önemli metodu Navigate metodudur. Bu metod bilgi olarak tek argüman alır. Bu argüman gösterilmesini istediğiniz lokasyonun adresini belirten stringden oluşur.
Bu metod şu şekilde kullanılır. WebBrowser1.Navigate(“www.vbturk.net”) Adresi “http://www.vbturk.net” olarak yazmanıza gerek yoktur. Gerekli argümanı kendisi eklemektedir. Örnek :

Visual Basic Code
Private Sub Form_Load()
On error Resume Next
WebBrowser1.Navigate (“www.vbturk.net”) 
End Sub


Projeyi çalıştırdığınızda sayfanızın yüklendiğini göreceksiniz. Bu şekilde değerimiz sabit olduğu için formumuz yüklenirken hep aynı sayfa açılacaktır. İstediğimiz sayfayı göstermesi projemizi daha kullanışlı yapacaktır. Şimdi formumuza bir metin kutusu birde buton ekleyelim. Butonumuzun ismini goster, metin kutusunu da Adres olarak değitirelim.

Visual Basic Code
1
2
3
4
5
6
Private Sub goster_Click()
On Error Resume Next
WebBrowser1.Navigate Adres.Text
Form1.Caption = Form1.Caption + WebBrowser1.LocationURL

End Sub


Navigate metodunu kullanmadan önce muhakkak hata kontrol ifadesini eklemelisiniz. Aksi takdirde bağlantının kopuk olduğu zaman programınız kırılarak hata verecektir. Navigate metdodunun genel yazımı şöyledir.

WebBrowser1.Navigate URL [Bayraklar,] [hedef çerçeve ismi,] [postdata,] [başlıklar]

URL : Uniform Resource Locator( bir biçimli kaynak yeri saptayıcısı) kelimelerini baş harflerinin kısaltılmasıdır. Görüntülenmesini isteğiniz yerin adresi için kullanılır. Navigate metodunun tek zorunlu argümanıdır.

Bayraklar: (flags) parametresinin kullanımı isteğe bağlıdır. Bu parametre kullanıldığı takdirde, internet’te sörf yapılırken uğranılan yerin, bu sörfe ait gezi tarihçesinde yer alıp almayacağını belirler. Bayraklar parametresi kullanıldığı takdirde aşağıdaki değerleri alır.


SEMBOLİK SABİT DEĞERİ ANLAMI
NavOpenInNew Window 1 Bağlantıyı yeni pencerede açar

NavNoHistory 2 Yeni erişilen bağlantıyı gezi tarihçesine
eklemez
NavNoReadFromCache 4 Cache bellekte saklanan kopya varsa bu
Bu kopyayı okuma
NavNoWriteToCache 8 Html sayfasını, Lokal Cache bellek
Üzerine yazma

Hedef Çerçeve İsmi (TargetFrameName) parametresi, kullanıma isteğe bağlı bir parametredir. Kullanıldığı takdirde sayfanın yeni bir çerçeve içinde görüntülenmesini sağlar.

PostData : Bu parametre de isteğe bağlı bir parametredir. Bu parametre kullanılırsa Navigate metodu Html GET metodunu kullanır. URL bir Web sayfası değilse bu parametre ihmal edilir.

Başlıklar(Title): bu parameterede isteğe bağlı kullanılabilir. İnternet üzerinde kendisinden yüklemek istediğiniz web sayfasını taşıyan Html sunucusuna ilave bilgi göndermesini sağlar. Tabi sunucu buna izin veriyorsa yapabilirsiniz.

2-LOCATİONNAME ÖZELİLİĞİ: Webbrowser kontrol nesnesinin o esnada görüntülemekte olduğu web sayfasına ait başlığı gösterir.

3-LOCATİONURL ÖZLİLİĞİ : Bu özellik görüntülenmekte olan sayfanın adresini verecektir.
Gezginimize statusbar ekleyerek daha kullanışlı ve görsellik kazandırabiliriz.
Statusbar1.simpletext=webbrowser2.locationurl

4- GOBACK METODU: Sayfalarda dolaşırken, bulunduğunuz sayfadan bir önceki sayfaya geri dönüşü sağlar

5- GOFORWARD METODU: Sayfalarda dolaşırken, daha önceden eriştiğiniz sayfadayken GoBack ile geri gitmeniz durumunda tekrar bir sonraki sayfalara gitmenizi sağlar.

6- GOHOME METODU: Giriş sayfanıza gitmenizi sağlar

7-GOSEARCH METODU: Sayfanın arama işlemini gerçekleştirmek için bu komut kullanılır.

8- GOREFRESH METODU: Bulunduğunuz sayfayı yenileyerek günceller.

9- GOSTOP METODU: Sayfaya bağlanma işlemini durdurur.


Diğer metodlarıda size bırakıyorum. Bunları da programınızda deneyerek keşfedeceğinizden eminim.

WEBBROWSER NESNESİNİN OLAYLARI:
Burada önemli bulduğum olaylardan bahsedeceğim. Toplam 23 adet olayı tanımlıdır.

1-BEFORENAVİGATE: web sayfası bir sayfaya bağlanmadan önce bu olay meydana gelir.

Visual Basic Code
1
2
3
4
5
6
7
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
On Error Resume Next

StatusBar1.SimpleText = WebBrowser1.LocationURL
Form1.Caption = Form1.Caption + WebBrowser1.LocationURL
MousePointer=VbHourglass
End Sub


2-DOWLOANDBEGİN OLAYI: Bu olay web sayfasının yüklenmesi sırasında meydana gelir.

Visual Basic Code
Private Sub WebBrowser1_DownloadBegin()
On Error Resume Next
StatusBar1.SimpleText = "Yükleniyor"
End Sub


3-DOWLOANDCOMPLETE : Bu olay web sayfasının yüklenmesi tamamlanınca meydana gelir. Bu olayı NavigateComplete olayı ile karıştırmayın. DowloandComplate sayfanın yüklenmesi başarılı olsa da olmasa da çalışacaktır. Ama NavigateComplate istenen sayfa tamamen yüklenip başarılı bir şekilde ulaşıldığında sağlanmaktadır.

Visual Basic Code
1
2
3
4
5
6
Private Sub WebBrowser1_DownloadComplete()
On Error Resume Next
StatusBar1.SimpleText = "Aktif sayfa :"
WebBrowser1.LocationNameURL = " & WebBrowser1.LocationURL"
MousePointer = vbDefault
End Sub


4-NAVİGATECOMPLETE : Bu olay sayfanın yükleme işi başaralı bir şekilde bittiğinde meydana gelir.

Visual Basic Code
1
2
3
4
5
6
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
On Error Resume Next

StatusBar1.SimpleText = WebBrowser1.LocationURL
Form1.Caption = Form1.Caption + WebBrowser1.LocationURL
End Sub

5- PROGRESSCHANGE : Bu olay belirli aralıklarla sürekli çalışır. Progress ve ProgressMax isimli iki parametresi bulunur. Yükleme işlemini ilerleyen çubuk ile kullanıcıya bildirilmesi aşağıdaki örnekteki gibi yapılabilir.

Visual Basic Code
Private Sub WebBrowser1_ProgressChange(ByVal Progress As Long, ByVal ProgressMax As Long)
On Error Resume Next
ProgressBar1.Value = Progress * 100 / ProgressMax

End Sub



NOTLAR: Bu kontrol nesnesi ile ilgili özellikleri kullanarak daha kullanışlı, gelişmiş programlar geliştirebilirsiniz. Benim işime basit bir program ile çok yaramıştı. İnternetten öğrencilerin sınav sonuçlarını almam lazımdı. Web sayfası ve kullandığım program arasındaki geçişi hesaplayınca ve artı 450 öğrenci olduğunu katarsak işim çok zordu. Ama ben formuma bu kontrolü ekledim ve veri bağlantısı ile öğrencilere tek tek eriştim. Ve sayfanın başlığına aday numaralarını yollayarak sonuçları hızlı bir şekilde aldım. Bununla ilgili bir örneği sizlere sunarlarsa yolluyorum. Bu ders ile ilgili bir kod ekleyerek yazımı tamamlıyorum. Başarılı çalışmalar diliyorum. Azminizi kaybetmeyin. Ve unutmayın bildiğinizi paylaşın, yoksa sizde bilmemiş olarak kalacaktınız.



Visual Basic Code
Private Sub form_click()
StatusBar1.SimpleText = WebBrowser1.LocationURL
End Sub



Visual Basic Code
1
2
3
4
5
6
Private Sub Form_Resize()
StatusBar1.Height = 1.2 * TextHeight("I")
WebBrowser1.Left = 0
WebBrowser1.Width = Form1.ScaleWidth
WebBrowser1.Height = Form1.ScaleHeight
End Sub


Visual Basic Code
Private Sub goster_Click()
On Error Resume Next
WebBrowser1.Navigate (Adres.Text)
Form1.Caption = Form1.Caption + WebBrowser1.LocationURL
End Sub


Visual Basic Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)
Select Case Button.Key
Case "geri"
On Error Resume Next
WebBrowser1.GoBack
End Select
Select Case Button.Key
Case "ileri"
On Error Resume Next
WebBrowser1.GoForward
End Select
Select Case Button.Key
Case "dur"
On Error Resume Next
WebBrowser1.Stop
End Select
Select Case Button.Key
Case "yenile"
On Error Resume Next
WebBrowser1.Refresh
End Select
Select Case Button.Key
Case "home"
On Error Resume Next
WebBrowser1.GoHome
End Select
Select Case Button.Key
Case "ara"
On Error Resume Next
WebBrowser1.GoSearch
End Select
Select Case Button.Key
Case "mail"
defter.Show
End Select
End Sub



Visual Basic Code
1
2
3
4
5
6
Private Sub WebBrowser1_BeforeNavigate2(ByVal pDisp As Object, URL As Variant, Flags As Variant, TargetFrameName As Variant, PostData As Variant, Headers As Variant, Cancel As Boolean)
On Error Resume Next

StatusBar1.SimpleText = "Sayfaya Bağlanıyor..." & URL
MousePointer = vbhoruglass
End Sub



Visual Basic Code
Private Sub WebBrowser1_DownloadBegin()
On Error Resume Next
StatusBar1.SimpleText = "Yükleniyor"
End Sub


Visual Basic Code
1
2
3
4
5
6
Private Sub WebBrowser1_DownloadComplete()
On Error Resume Next
StatusBar1.SimpleText = "Aktif sayfa :"
WebBrowser1.LocationNameURL = " & WebBrowser1.LocationURL"
MousePointer = vbDefault
End Sub


Visual Basic Code
1
2
3
4
5
6
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
On Error Resume Next

StatusBar1.SimpleText = WebBrowser1.LocationURL
Form1.Caption = Form1.Caption + WebBrowser1.LocationURL
End Sub



Visual Basic Code
Private Sub WebBrowser1_ProgressChange(ByVal Progress As Long, ByVal ProgressMax As Long)
On Error Resume Next
ProgressBar1.Value = Progress * 100 / ProgressMax

End Sub


"Boş Örnek Eklerim, Yapıp Verirler" demeyin, örneğinizi hazırlayın.
Komplike kod talebiniz var ise İletişim bağlantısından bize ulaşın. 
Cebelleşmezsen Öğrenemezsin. 

Kullanici Avatari

ercansahin

Uzman
ER.... ŞA....
 44
 3.740
 69
 14/11/2008
 Bursa
 
 Ofis 2010 32 Bit
 27/11/2018,13:27
Hocam paylaşımnız için teşekkürler..



Kullanici Avatari

ogulcan92

Aktif Üye
 54
 1.159
 154
 06/05/2009
480
 İzmir
 
 Ofis 2003
 07/08/2015,11:50
Sn:sledgeab
Paylaşım için teşekkürler.



Kullanici Avatari

naimelik

Aktif Üye
NA.... ÇE....
 50
 129
 10
 26/11/2008
2
 İstanbul
 
 Ofis XP
 16/06/2018,01:14
emeğinize sağlık çok güzel bilgiler



Kullanici Avatari

benremix

Onursal Üye
RA.... SO....
 51
 4.443
 127
 17/05/2009
365
 Ankara
 Şirket Sahibi
 Ofis 2010 64 Bit
 Bugün,13:06
Sn sledgeab bu değerli paylaşım için teşekkürler. Saygılar...


Bilgi paylaşıldıkça çoğalır....
Her engel, yaşam koşullarınızı daha iyileştirecek bir fırsattır.


Access için her zaman lazım olacak konu başlıkları listesi



Kullanici Avatari

maytas

Onursal Üye
 53
 545
 24
 21/12/2008
178
 Bursa
 
 Ofis 2010 32 Bit
 28/07/2018,14:42
Çok yararlı bir paylaşım, sayın Sledgeab.


Mesajlarımızı Türkçe yazım kurallarına uygun yazalım.
Emeğe saygı gösterelim, bir teşekkürü çok görmeyelim.
[Resim: 3l7gq.gif]


Konuyu Okuyanlar: 1 Ziyaretçi

Türkçe Çeviri: MCTR, Yazılım: MyBB, © 2002-2018 MyBB Group.
123444