Visual Basic, Basic (Beginners-All Purpose Symbolic Instruction Code) temelleri uzerine kurulmuş gorsel bir programlama dilidir. Bugun dunyada cok yaygın bir kullanım yeri bulmuştur. Bunun en buyuk sebebi cok kolay ogrenilen ve guclu bir programlama dili olmasıdır. Visual Basic ile yapabilecekleriniz sadece sizin hayal gucunuze ve becerinize bağlıdır. Ticari yazılımlar geliştirebilir, veri tabanları uzerinde calışabilirsiniz, oyun programları yazabilir, bilimsel calışmalarınızda kullanabilirsiniz.
Visual Basic ile Word ve Excel gorunumunde bir program geliştirmek son derece kolaydır. Bunu mumkun kılan grafiksel arabirimdir. Bu ara birim kullanıcı ile program kodları arasında iletişimi sağlar. Orneğin Windows’ta bir dosyayı acarken bir simge uzerine tıkladığımızda bunun arka planında program bu işlemi yapmak icin gerekli olan kodları calıştırmakla uğraşır. İşte Visual Basic’te de bunun gibi kullanıcı arayuzleri olacak nesneler vardır. Programı calıştıran kodların bilinmesi kadar bu nesnelerinde bilinmesi de gerekmektedir. Visual Basic’te Windows ortamından tanıdığımız butonlar, kaydırma cubukları, text kutuları gibi nesneler vardır. Program bu nesnelere bağlı olan olayları kullanarak yazılır. Orneğin bir buton nesnesinin en onemli olayı butonun uzerine tıklanmasıdır. Kullanıcı bu olayın icerisine butona tıklandığında ne yapılması isteniyorsa onunla ilgili kodları yazar.
calışma alanı
Calışma alanı olarak sadece program kodlarını yazdığımız kısım değil, tum menuler ve pencereler buna dahildir.
Menu Cubuğu (Menu Bar):
Menu cubuğu uzerinde Vbasic menuleri bulunur. Bu menuler File, Edit, View, Project vs. dir. Menulerde değişik komutlar bulunmaktadır.
Arac Kutusu (Tool Box):
Arac kutusu calışma alanın sol tarafında bulunan ve icerisinde standart nesnelerin bulunduğu bir kutudur. Bu nesneler ileride detaylı olarak anlatılacaktır.
Ozellikler Penceresi (Properties Window-F4):
Her nesnenin kendisine ozgu ozellikleri vardır. Nesnenin rengi, boyutları, vs daha pek cok ozelliği ozellikler penceresinden duzenlenir. Orneğin aşağıda Command1 isimli CommandButton nesnesinin ozellikler penceresi gorulmektedir.
Proje Penceresi (Project Explorer-Ctrl+R):
Buyuk projelerde bircok Form ve Modul kullanılır. Bu pencere sayesinde hangi formun hangi projeye ait olduğu ve ozellikleri kolayca izlenebilir.
Kod Penceresi (Code):
Programcılığın esasını oluşturan kod yazma işlemi Vbasic’te olaylara bağlı olarak yapılır. Olaylarda nesnelere bağlıdır. Orneğin bir Buton nesnesinin Click olayı icerisine bir bir kod yazılırsa, program calıştığında bu butonun uzerine tıklama yaptığımızda icerisindeki bu kodları calıştıracaktır. Nesne ve olayların her ikiside Code penceresinden gorulebilir.
Operatorleri
• Matematiksel
• Karşılaştırma
• Mantıksal
Olmak uzere uc grupta inceleyeceğiz.
Matematiksel Operatorler:
Bu operatorleri 7 tanedir.
• + Toplama işlemi
• - Cıkarma işlemi
• * Carpma işlemi
• / Bolme işlemi
• ^ Us alma işlemi
• ( ) Parantez işlemleri
• \ Tam sayılı bolme işlemi
Burada \ tam ile yapılan bolmelerde sonucun tam sayı kısmı yazılır. Or: 7\3 sonucu 2.33 değil 2 dir. ( ) parantezler ise işlemler arasında onceliği belirlemede kullanılır. İşlemlerde oncelik sırası, (), ^, * / , + - , soldan sağadır.
Karşılaştırma Operatorleri:
İki değer arasında karşılaştırma yapılırken kullanılır. Karşılaştırma sonucu true (doğru) yada false (yanlış) olabilir. Doğru sonuclar icin 1, yanlış değerler icin 0 değeri dondurulur.
Sayısal ifadeleri karşılaştırırken 7 farklı operator kullanılabilir.
Operator Durum Yazımı
= eşitlik a=b
< kucuktur a buyuktur a>b
, >< eşitsizlik ab , a>b
String ifadelerde:
String değerleri karşılaştırırken Like operatorunden yararlanılır. Bu ifade buyuk kucuk karakter ayrımı yapar. Eğer buyuk kucuk ayrımı yapılmak istenmiyorsa Declerations bolumune Option Compare Text ifadesi yazılmalıdır. Ornegin:
Option Compare Text
__________________
sonuc= “A” Like “a”
Print sonuc
Bu ifade sonucu True değeri alınır. Bu şekilde ifadeleri karşılaştırırken Bazı karakterlerin yerine gecmesi icin * ve tek bir karakterin yerine gecmesi icin ? işareti kullanılabilir. Orneğin
sonuc= “Ali” Like “A?i”
Print sonuc
Sonuc True olur. ? işareti “l” karakteri yerine kullanıldı.
sonuc= “Ali” Like “A*”
Print sonuc
Sonuc True dur. * işareti “li” karakterleri yerine kullanıldı.
Mantıksal Operatorler:
Birden fazla karşılaştırmayı aynı anda yapmak icin kullanılır. Karşılaştırma sonucu True yada False dır.
And Operatoru:
Bu operator butun değerler True ise sonucu True=1 verir. Herhangi bir False sonuc False=0 dır.
1.Değer Operator 2.Değer Sonuc
1 And 1 1
1 And 0 0
0 And 1 0
0 And 0 0
Orneğin: if yas>15 And yas190 Or boyDeactivate>Closed olarak sıralanır.
uygulama:
Formun uzerine iki tane Label nesnesi yerleştirin. Formun Resize olayını kullarak formun mouse ile boyutlarını tutup her değiştirdiğinizde formun genişlik ve yuksekliğini bu label nesnelerinde yazmasını sağlayın.
Private Sub Form1_Resize(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Resize
Label1.Text = Me.Size.Width.ToString()
Label2.Text = Me.Size.Height.ToString()
End Sub
uygulama:
Formun ilk yuklendiğinde kullanıcıdan şifre istemek icin bir pencere acılsın. Eğer şifre doğru ise program calışmaya devam etsin. Yanlışsa program dursun.
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim sifre As VariantType
sifre = InputBox("şifrenizi giriniz", "Sifre Kontrol", "*****", 300, 200)
If (sifre 123) Then
End
End If
End Sub
değişkenler:
Program icerisinde kullanılan sabit ve değişkenlerin tanımlanması profesyonel programcılık icin gereklidir.
• Her değişken hafızada belli bir yer kaplar. Bu nedenle ihtiyac olduğu kadar hafızada en az yer kaplayan değişkenlerin kullanılması gerekir.
• Değişkenler başlangıcta tanımlanırsa, kodlama sırasında değişkenlerin birbirine karışması ve meydana gelecek hatalar onlenir.
Program yazarken değişken kullanımı hafızayı verimli kullanma, olası hataları onlemek icin mutlaka kullanılmalıdır. Bu kullanımı zorunlu hale getirmek icin “Option Explicit” ifadesi kullanılabilir. Değişken tanımlarken “Dim …. As Integer” şeklinde ifade kullanılır.
Değişken tanımalama uc duzeyde olur.
Procedure Duzeyi: Procedure her olay icin acılmış olan kucuk bolumlerdir. Private yazısı ile başlayan satırlar her bir proceduru gosterir.
Form Duzeyi: Bir procedure icinde tanımlanan değişken başka bir procedure icinde tanınmaz. Tanımlanan değişkenin Formun icindek butun procedurler icinde tanınmasını sağlamak icin butun procedurlerin uzerinde (dışında) “Windows Form Designer Genereated Code” yazısının altında tanımlama yapmak gerekir.
Proje Duzeyi: Bir formda tanımlanan değişken başka formlar tarafından tanınmaz. Bunu sağlamak icin Proje duzeyinde tanımlama yapmak gerekir. Bunun icin yine aynı yerde Public ifadesi ile tanımlama yapmak gerekir. Başka formda proje duzeyinde tanımlanan değişkeni kullanmak icin o değişkenin başında o formun adını da yazmalı.
Sabitler:
Sabitler program icerisinde hep aynı değeri saklar. Bunlar string turu sayısal olmayan ifadeler olabileceği gibi, sayısal ifadelerde olabilir. Tanımlama işlemi Const deyimi ile yapılır.
Ornek:
Const isim$=”Ahmet”
Const alan=200
Burada olduğu gibi sabitler bir isme atanarak kullanılır. Kullanılan her sabitin bir tipi vardır. Bu turler değişkenlerde kullanılanlarla aynıdır.
Değişkenler:
Değişkenler program icerisinde farklı değerler alabilir. Değişkenler tanımlanırken dizilimi şu şekildedir.
Dim değişkenin adı As değişkenin tipi
Ornek:
Dim isim As String
Dim yas As Byte
Dim no As Long
Sabitlerde ve değişkenlerde kullanılabilecek değişik tanımlamalar.
Sabit ve Değişkenlerde kullanılan Tanımlamalar:
• String: Karakter ifadeleri (sayı olmayan) tanımlamada kullanılır. Hafızada her karakter 1 Byte (8bit) alan kaplar. “...” sembolleri arasına yazılır. Or: a=“Ahmet”, b=“kod12”, c=“123” gibi
• Boolean: İki durumdan birinin olduğu durumlarda kullanılır. 1 ve 0 sayılarını alabilir. True(doğru) yada False (yanlış) olabilir.
• Byte: 28=0-255 arasındaki tam sayıları alabilir. Hafızada (8/8=1 Byte) yer tutar.
• Integer: ± 216= ± 32768 arasındaki tam sayıları alır. Hafızada (16/8=2 Byte) yer tutar.
• Long: ± 232 arasındaki tam sayıları tutar. Hafızada (32/8=4 Byte) yer tutar.
• Single: ± 232 ondalıklı sayıları tutar. Hafızada 4 byte yer kaplar.
• Double: ± 264 ondalıklı sayıları tutar. Hafızada 8 byte yer tutar.
• Currency: Para ile ilgili işlemlerde kullanılır. 8 byte yer tutar.
• Date: Tarih ve zaman gibi değerleri tutar. 1/1/100 den 12/31/9999 arası değerler alabilir. 8 byte yer tutar.
• Variant: Yukarıda kullanılabilecek butun tanımlamaları icine alabilen bir tanımlamadır. Tanımlama yapılmadığı zamanlarda yada hangi tanımlaamanın kullanılacağından emin olunmadığı durumlarda kullanılabilir. 16 Byte yer kaplar.
donguler ve bloklar:
Kontrol ve dongu deyimleri program akışının kontrolunu sağlamak amacıyla kullanılır. Gercekte programın calışmasını kullanılan nesneler ve bu nesnelerin icerisinde tanımlanan olaylar belirlemektedir. Fakat bu olayların icerisinde ise kontrolu bu deyimler sağlamaktadır.
IF-THEN-ELSE Deyimi: Programın koşullara bağlı olarak kararlar vermesine olanak sağlar. Yapısı;
Yapısı iki şekilde oluşturulabilir.
Basit Yapı:
If durum Then deyim1 Else deyim2
Bu yapıda Else istenirse kullanılmaya bilir.
Blok Yapı:
If durum1 Then
Deyimler1
ElseIf durum2 Then
Deyimler2
ElseIf durum3 Then
Deyimler3
…..
Else
Deyimler4
End If
Ornek: Once basit yapıya bir ornek verelim.
If tahmin=30 Then Print “bildiniz” Else Print “bilemediniz”
Bu ornekte eğer tahmin 30’a eşitse Then den sonraki ifadeyi işletecektir. Eğer eşit değilse Else’den sonraki ifadeyi işletecektir. Blok yapıda ElseIf ifadesi istenilen sayıda coğaltılabilir. En sonundaki Else ise şartsız olarak kullanılır.
uygulama: Formun uzerine 2 tane TextBox, 2 tane Label, 1 tane Command butonu ekleyin. Kullanıcıdan kullanıcı adını ve şifre isteyip bunları iceriden kontrol etsin. Kodların icerisine bir kactane kullanıcı adı ve şifre ekleyin.
Private Sub Command1_Click()
Select Case LCase(Text1.Text)
Case ""
MsgBox "Lutfen bir kullanıcı adı giriniz"
Case "admin"
If Text2.Text = "321" Then
MsgBox "Şifre Doğru"
End If
Case "misafir"
If Text2.Text = "123" Then
MsgBox "Şire Doğru"
End If
Case "aktas"
If Text2.Text = "456" Then
MsgBox "Şire Doğru"
End If
Case Else
MsgBox "Boyle bir kullanıcı kayıtlı değil"
End Select
End Sub
SELECT CASE Deyimi: Bu deyim belli bir koşula gore cok sayıda dallanma işlemini gercekleştirir. Yapısı şu şekildedir.
Select Case Durum
Case ifade1
Komutlar
Case ifade2
Komutlar
...
Case Else
Komutlar
End Select
Select Case kısmında bir durum (koşul) belirleniyor. Case ifadelerinde ise bu durumu sağlayan ifade araştırılıyor. Eğer herhangi bir ifade bu durumu sağlıyorsa hemen onun altındaki komutlar işletiliyor. Eğer hicbir ifade bu durumu sağlamazsa Case Else’nin altındaki komutlar işletiliyor.
uygulama:
Bir formun uzerindeki butona tıkladığımızda bir pencere acılsın ve bu pencereden aldığımız notu girmemiz istensin. Ardından aldığımız not durumlarına gore yine bize gecip kaldığımızı pencereden soyleyen bir program yazın.
Private Sub Command1_Click()
puan = InputBox("Notunuzu Giriniz")
Select Case puan
Case 100
MsgBox ("Bravo 100 almışsınız. Odul kazandınız")
Case 90 To 99
MsgBox ("Pekiyi ile gectiniz")
Case 80 To 89
MsgBox ("iyi ile gectiniz")
Case 70 To 79
MsgBox ("orta ile gectiniz")
Case 60 To 69
MsgBox ("Gecerle gectiniz")
Case Is < 60
MsgBox ("kaldınız")
Case Else
MsgBox ("yanlış sayı girdiniz")
End Select
End Sub
Bu ornekte puan 100’e eşitse ilk Case satırı işletilecektir. Yada puan 60 ile 69 arasında ise “Gecerle gectiniz” satırı işletilecektir. Eğer yukarıdaki hic bir şartı sağlamıyorsa Case Else satırı işletilecektir.
__________________
VB Nedir? Nasıl Kullanılır?
Programlama0 Mesaj
●23 Görüntüleme
- ReadBull.net
- Programlama ve Yazılım
- Programlama
- VB Nedir? Nasıl Kullanılır?