Tüm Üyelere ve Ziyaretçilere Forumda İyi Vakit Geçirmelerini Dileriz.
Tüm Paylaşımlarla, İsteklerinizle , Sorularınızla Daima Yanınızdayız.

[ Ders 5 ] Visual Basic İçinde İnternet

Konu Sahibi: Morningstar, Kategori: Visual Basic 6.0, 0 Yorum, 1172 Okunma
BU KONUYU DEĞERLENDİR
  • Derecelendirme: 0/5 - 0 oy
  • 1
  • 2
  • 3
  • 4
  • 5
Görüntüleyenler: 1 Ziyaretçi
Yönetici
Yönetici
*******
348
Mesajlar
347
Konular
0
Rep Puanı
Information  06-02-2020, Saat: 23:53 (Son Düzenleme: 09-02-2020, Saat: 22:00, Düzenleyen: Morningstar.)
#1
[ Ders 5 ] Visual Basic İçinde İnternet
Açıklama

VISUAL BASIC İÇİNDE INTERNET
UYGULAMALARI (WebBrowser KONTROLÜ)

VISUAL BASIC VE INTERNET

Internet artık hemen hemen bilgisayarı olan tüm kullanıcıların bağlı olduğu bir bilgi otobanı olarak yazılım geliştiricilere yeni yaklaşımlar sunmaktadır. Internet adı ile çok sık tekrarlana bir diğer kavram da gezgin ya da göz atıcı diye Türkçeleştirdiğimiz Browser kavramıdır. Gezginler internet ortamında HTML biçimindeki belge dosyalarını bizim alışık olduğumuz Web sayfaları olarak görüntüleyen programdır. Visual Basic 5.0 ile yazılım geliştirme işlemi, Visual Basic kullanıcıları için, internet ortamına sıçramış ve 6.0 sürümü ile internet, yaygın bit uygulama platformuna dönüşmüştür. Bu sebeple bu bölümde anlatılacak olan WebBrowser kontrolünü bir önceki bölümümüzde anlattığımız standart Visual Basic kontrollerinden ayırma ihtiyacı hissettik.
Visual Basic’in yazılım geliştirmede sağladığı kolaylıklar ve getirdiği yenilikler ile çok sık kullanılan Internet Explorer veya NetScape Navigator ‘ı kullanmak yerine, sadece kendimize ait gezgin türü programlar yazma şansına sahibiz.

WEBBROWSER KONTROLÜ

Bu bölümde ki amacımız bu tür bir gezgini oluşturabilmek için gerekli olan WebBrowser kontrolünün özelliklerini açıklamak olacaktır. WebBrowser kontrolünü kullanabilmemiz için internet bağlantımızın olması gerekir. Evinizde, Windows 95 veya NT işletim sistemlerindeki çevrim içi bağlantı(dial-up ) ile modeminiz kullanarak bir servis sağlayıcısı üzerinden veya işyerinizden veya okulunuzdan network aracılığı ile internete bağlanabilirsiniz. WebBrowser kontrolünü kullanarak oluşturacağımız gezginimizin çalışabilmesi için bu bağlantının gerçekleştirilmiş olması gerekmektedir.

WebBrowser ‘ı kullanmaya başlamadan önce bu kullanışlı kontrolün ne işe yaradığını şu şekilde adımlandırabiliriz.
1. ) Belirttiğiniz adrese gider
2. ) Oradaki HTML belgesini alır ve
3. ) Bu HTML belgesini göstermeye alıştığımız Web sayfalarına dönüştürür.

HTML , Hypertext Markup Language kelimelerinin baş harflerinden oluşan bir akronimdir. Web sayfaları HTML biçimlerinde yazılan sayfalardır. WebBrowser kontrolü ise Internet ‘ten veya şirketinizin


içindeki Intranet’ ten işte bu HTML sayfalarını alarak sizin için otomatik olarak Web sayfalarına dönüştüren bir taşıyıcıdır. (Container) WebBrowser kontrolünün yapabildikleri sadece bunlarla sınırlı değildir. Bu kontrolün özelliklerini ve metodlarını kullanarak sadece yazacak olduğunuz birkaç satır kodla bir uygulamayı mekanizmanıza çekmek için(download) veya kullanıcının ziyaret ettiği sayfaların listesini kullanarak bu sayfalar arasında ileriye veya geriye yönlendirme yapmak için kullanabilirsiniz.
Şayet Internet Explorer ‘ın 3 veya daha sonraki sürümünü mekanizmanıza kurmuşsanız WebBrowser kontrolüne de sahipsiniz demektir. WebBrowser kontrolü Microsoft’ un internet kontrolleri içinde bulunur. Ctrl+T kısa yol tuşu ile veya Project/Components menü komutu ile Components ileti penceresini açacak olursanız bu ekranda aşağıdaki Microsoft Internet Controls seçeneğini seçerek araç kutusuna dahil edebilirisiniz.
[Resim: i1.jpg]
Yukarıda Microsoft Internet Controls seçilip OK butonuna tıklandıktan sonra WebBrowser kontrolünü araç çubuğunuzda görebilirsiniz.
[Resim: i2.jpg]
Navigate Metodu
WebBrowser kontrolünün en önemli metodu Navigate metodudur. Bu metod, bilgi olarak, tek bir argüman alır; bu argüman, WebBrowser’in görüntülenmesini istediğimiz lokasyonun adresini belirten bir stringten oluşur. Form üzerine yerleştirdiğiniz WebBrowser nesnesinin adı, webBrowserl ise, bu metod aşağıdaki gibi kullanılır:
WebBrowser1.Navigate(.federal.com.tr)
Burada www.arabul.com.tr ile belirtilen, erişebilmek istenen internet lokasyonunun adresidir. Bu adresin, http:ZZ.federal.com.tr şeklinde yazılmasına gerek yoktur. Çünkü, WebBrowser kontrol nesnesi, gerekli kısmı kendisi eklemektedir.
Aşağıdaki örnek, form açıldığında Federal’ ın sayfasına bağlanacaktır.
[Resim: i3.jpg]
[Resim: i4.jpg]
Yukarıdaki formda WebBrowser kontrolü Federal’ in sayfasını hem almakta hem de alabildiği kadarını ekranda görüntülemektedir. Sayfa ekrana sığmadığı için de kaydırma çubukları görüntülenmektedir.
Yukarıdaki WebBrowser kontrolüne form yüklenirken sabit bir değer verdik. Bu sayfanın yüklenmesi bittikten sonra formumuz sürekli olarak aynı sayfayı görüntüleyecektir. Halbuki bizim amacımız formumuzun yani üzerine yerleştirdiğimiz WebBrowser kontrolünün istediğimiz adresleri görüntülemesini sağlamak olmalıdır. Bu amaç için formun üstüne aşağıdaki gibi bir tane metin kutusu ve komut butonu ve bu kontrolleri WebBrowser kontrolünden ayırmak için de bu kontrolleri içine alacak çerçeve kontrolünü (Frame)yerleştirelim. Metin kutusunun ismini txtAdres ve butonun ismini cmdGoster, başlıkları ise sırası ile http://federal.com.tr ve Göster olarak değiştirelim.
[Resim: i5.jpg]
Formumuzun tasarım anındaki görüntüsü yukarıdaki gibi olacaktır.
Şimdi komut butonunun click olayını aşağıdaki Visual Basic kodunu girelim.

Kod:
Private Sub cmdGoster_Click()
On Error Resume Next
WebBrowser1 .Navigate txtAdres.Text
End Sub

Böylece metin kutusuna bir internet adresi yazıp Gönder başlıklı butona tıkladığımızda WebBrowser kontrolümüz belirttiğimiz adresteki anan sayfayı alıp görüntüleyecektir.
Aşağıdaki ekranda formumuzun bağlandığı adres ve bu adresteki sayfanın WebBrowser tarafından dönüştürülen web sayfası görülmektedir.
[Resim: i6.jpg]
Bağlanmasını istemediğiniz sayfalar varsa bunu Göster başlıklı butonun komut click olay prosedürünü aşağıdaki gibi değiştirerek kontrol edebilirsiniz.

Kod:
Private Sub cmdGoster_Click()
On Error Resume Next
If InStr("sex.com", txtAdres.Text) Then
MsgBox "Bu sayfa çok seksi bir sayfadır bağlanamazsınız"
Else
WebBrowser1 .Navigate txtAdres.Text
End If
End Sub

WebBrowser’ un Navigate metodunu kullanmadan önce On Error Resume Next ifadesini belirtmelisiniz. Aksi takdirde bağlantının kopuk olduğu sırada programınızı çalıştırırsanız hata mesajı ile programınız kırılacaktır. Navigate metodunun genel yazılımı aşağıdaki gibidir.

WebBrowserKonrolİsmi.Navigate URL [Bayraklar,] [Hedef Çerçeve İsmi,] [PostData,] [Başlıklar]
URL, Uniform Resource Locator (Biçimli Kaynak Yeri Saptayıcısı) kelimelerinin baş harflerinden oluşan bir akronimdir. Görüntülemek istediğ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(history list terimi için gezi tarihçesi demeyi uygun gördük) yer alıp alamayacağını belirler. Bayraklar (Flags) parametresi kullanıldığı takdirde aşağıdaki Tablo Int.l’deki değerleri alır:
Tablo Int.l- Bayraklar (Flags) parametresinin değerleri
SEMBOLİK SABİT DEĞERİ ANLAMI Lokasyon veya dosyayı
NavOpenInNewWindow 1 yeni bir pencere kullanarak açar
NavNoHistory 2 Yeni erişilen lokasyonu gezi tarihçesine eklemez Cache bellekte saklanan
NavNoReadF romCache 4 bir kopya varsa, bu kopyayı okumaya teşebbüs etme! HTML sayfasını, lokal
NavNoWriteToCache 8 Cache bellek üzerine yazma!
Hedef Çer çeve İ smi, (Target Frame Name) parametresi, kullanımı isteğe bağlı olan bir diğer parametredir. Kullanıldığı takdirde, istenilen HTML sayfasının yeni bir çerçeve(frame) içinde görüntülenmesini sağlar.
PostDat a, bu parametre de kullanımı isteğe bağlı olan bir parametredir. HTML formları ile çalışıldığı takdirde kullanılır. Bu parametre kullanılmadığı takdirde , Navigate metodu, HTML GET metodunu kullanır, URL, bir Web sayfası değilse, bu parametre ihmal edilir.

Başlıklar, kullanımı isteğe bağlı olan diğer bir parametredir. Internet üzerinde, kendisinden yüklemek istediğiniz Web sayfasını taşıyan HTML sunucusuna(server) ilave bilgi gönderilmesini sağlar. Şayet eriştiğiniz HTML sunucusu, URL bilgisi ile belirlenmiş diğer eylemlere izin veriyorsa, bu parametre de kullanılabilir.
LocationName ÖZELLİĞİ
WebBrowser kontrol nesnesinin o esnada görüntülemekte olduğu World Wide Web (WWW) ‘e ait HTML sayfasının başlığını görüntüler.
Şayet, lokal bir HTML sayfasına bakılıyorsa, bu durumda, LocationName özelliği, dizin ya da dosyanın tüm yol adını gösterecektir.
Form üzerine yerleştireceğiniz bir metin kutusunun Text özelliğini aşağıdaki gibi atayarak, LocationName özelliğinin içeriğini görüntüleyebilirsiniz:
Text1 .Text=WebBrowser1 .LocationName
LocationURL ÖZELLİĞİ
WebBrowser kontrol nesnesinin o esnada görüntülemekte olduğu World Wide Web (WWW) ‘e ait HTML sayfasının adresini (URL’ini) vermektedir.
Şayet, lokal bir HTML sayfasına bakılıyorsa, bu durumda, LocationURL özelliği, dizin ya da dosyanın tüm yol adını gösterecektir
Gezginimizi daha işlevsel bir hale getirebilirsiniz. Bunu için formunuza durum çubuğu (Status bar) ekleyelim.
Bunun için Statusbar’ın Simple Text özelliğine aşağıdaki değerleri atamamız yeterli olacaktır.

Kod:
Private Sub Form_Load()
StatusBar1.SimpleText = WebBrowser1.LocationURL
End Sub

Programımızı çalıştırıp formun üstüne tıkladığımızda aşağıdaki çıktıyı elde ederiz.
[Resim: i7.jpg]
Fakat bu sonucu elde etmek için formun üstüne tıklatmak yerine WebBrowser’in tetiklediği olayları kullanmamız daha uygun olacaktır. WebBrowser kontrolü bir sayfaya bağlanmadan önce BeforeNavigate olayı çalışır. Sayfa yüklenmeye başlamadan önce işlemi iptal etmek için Cancel argümanına False değerini atamak gerekir. Bu olay prosedürünün diğer parametreleri URL, Flags(Bayraklar), TargetFrameName(Hedef çerçeve ismi) ve Headers(Başlıklar) daha önce izah edilmişti. Yükleme işi devam ettiği süre içinde ise ProgressChange olayı belli aralıklarla sürekli olarak çalıştırılır. Progress ve ProgressMax isimli iki parametresi bulunur. Progress parametresinin -1 olması işlemin sona erdiğini gösterir. Yükleme işlemi bir ilerleme çubuğu ile kullanıcıya aktarılmak istenirse aşağıdaki formül kullanılabilir.
Progress*100/progressMax
Yükleme işi sona erdiğinde de DownloadComplate olayı çalışır. İşler yolunda giderse işlem sona erdiğinde çalışır. Fakat yükleme işi

kesildiğinde veya bir hata oluştuğunda da çalışır. Bu olay NavigateComplate olayı ile benzermiş gibi görünse de ondan farklıdır. NavigateComplate olayı sadece WebBrowser kontrolü belirtilen URL adresine başarılı bir şekilde ulaştığında çalışır. Yükleme esnasında kullanıcıya programın yükleme işi ile meşgul olduğunu gösteren mouse göstergesi bu olay prosedürü için değiştirilebilir. Şimdi aşağıdaki kod satırını programınıza ekleyelim.

Kod:
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
StatusBarl.SimpleText = "Sayfaya bağlanıyor..." & URL MousePointer = vbHourglass End Sub
Private Sub WebBrowser1_DownloadBegin()
On Error Resume Next
StatusBar1.SimpleText = "Yükleniyor..."
End Sub
Private Sub WebBrowser1_DownloadComplete()
On Error Resume Next
StatusBar1.SimpleText = "Aktif sayfa:" & WebBrowser1.LocationName & "URL =" & WebBrowser1.LocationURL
MousePointer = vbDefault
End Sub
Private Sub WebBrowser1_NavigateComplete2(ByVal pDisp As Object, URL As Variant)
On Error Resume Next
StatusBar1.SimpleText = WebBrowserLLocationURL
End Sub


Programımızı çalıştırırsak aşağıdaki görünümleri elde edebiliriz.
[Resim: i8.jpg]
Programımız yeni bir adrese bağlanıyor. Durum çubuğunda Yükleniyor... ifadesi görünebilir. Aşağıda ise yükleme işinden sonraki durum çubuğu görülebilir.
[Resim: i9.jpg]
Bu ilavelerden sonra hemen hemen bütün tarayıcılarda bulunan araç çubuğundaki butonları programımıza ekleyebiliriz. Bunları bir araç çubuğu veya buton şeklinde tasarlamak, butonlara resimler ilave etmek tamamen size kalmış bir iştir. Ayrıca WebBrowser kontrolünün boyutlarını da formun değişen boyutlarına göre ayarlamak gerekir. Butonları frButonPanel adındaki çerçeve nesnesinin içine, metin kutusunu ve Göster başlıklı butonu ise frURLPanel isimli çerçeve nesnesinin içine yerleştirelim. Bu arada formun adını da frmGezgin olarak değiştirmeyi unutmayınız.

Kod:
Private Sub cmdDur_Click()
On Error Resume Next
WebBrowser1. Stop
End Sub
Private Sub cmdGeri_Click()
On Error Resume Next
WebBrowser1.GoBack
End Sub
Private Sub cmdGoster_Click()
On Error Resume Next
WebBrowser1 .Navigate txtAdres.Text
End Sub
Private Sub cmdHome_Click()
On Error Resume Next
WebBrowser1 .GoHome
End Sub
Private Sub cmdIleri_Click()
On Error Resume Next
WebBrowser1.GoForward
End Sub
Private Sub cmdYenile_Click()
On Error Resume Next
WebBrowser1 .Refresh
End Sub
Private Sub cmdAra_Click()
On Error Resume Next
WebBrowser 1. Go Search
End Sub


Private Sub Form_Resize()
StatusBarl.Height =1.2* TextHeight("I")
WebBrowserl.Left = 0
WebBrowser1.Top = frURLPanel.Top + frURLPanel.Height
WebBrowser1.Width = frmGezgin.ScaleWidth
WebBrowser1.Height = frmGezgin.ScaleWidth - frButonPanel.Height -
frURLPanel.Height - StatusBar1.Height
End Sub
GoBack METODU
Web sayfasını dolaşırken, bulunduğunuz sayfadan bir önceki Web sayfasına geri döner.
GoForward METODU
Web sayfalarını dolaşırken, daha önceden erişilmiş bir Web sayfaları dizisinde, bulunulan sayfadan bir sonraki sayfaya geçişi sağlar.
GoHome METODU
Internet içindeki Web sayfaları gezintisinde, gezinin başladığı ilk sayfaya dönüşü sağlar.
GoSearch METODU
Web üzerinde arama işlemlerinin gerçekleştirilebileceği sayfaya gidişi sağlar
Programın son hali aşağıdaki gibidir.
[Resim: i10.jpg]
Yukarıdaki ekranda <- başlıklı butona basacak olursak bir önceki web sayfası ekrana gelecektir. Aynı zamanda formun boyutlarını değiştirecek olursanız form üzerindeki kontroller de yerlerini ve büyüklüklerini yeni boyutlarına göre dinamik olarak ayarlayacaklardır.
[Resim: i11.jpg]
[Resim: imza.png]


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
Visual Basic Nedir ? Hadi Cevaplayalım Morningstar 0 536 30-03-2020, Saat: 23:10
Son Yorum: Morningstar
Visual Basic Kod Bank 2.0 Kod Örnekleri Morningstar 0 1,125 09-03-2020, Saat: 23:05
Son Yorum: Morningstar
Visual Basic Form close butonu nasıl çalıştırılır? Morningstar 0 1,231 09-02-2020, Saat: 23:32
Son Yorum: Morningstar
[ Ders 4 ] Visual Basic Kontrol Nesneleri Morningstar 0 1,114 06-02-2020, Saat: 23:22
Son Yorum: Morningstar
[ Ders 3 ] Visual Basic Formlarla Çalışmak Morningstar 0 1,177 02-02-2020, Saat: 00:33
Son Yorum: Morningstar


[-]
Etiket
visual ders i̇çinde i̇nternet 5 basic

Hızlı Menü: