Visual Basic 6.0 Ders Notları
description
Transcript of Visual Basic 6.0 Ders Notları
1
Visual Basic 6.0Ders Notları
Anadolu ÜniversitesiEndüstri Mühendisliği Bölümü
Kaynak: İhsan Karagülle, Zeydin Pala, Visual Basic 6.0, Türkmen Kitabevi, 1999, Beyazıt İstanbul,
Program Kontrol ve Döngü Deyimleri, OperatörlerProgram Kontrol ve Döngü Deyimleri, Operatörler
2
Program Kontrol Deyimleri
• VB’de kullanılan kontrol deyimleri :– If … Then …– Select Case …– IFF– Choose– Switch
• Kontrol deyimleri ile belirli şartlar aranarak programın bir kısmının çalıştırılması sağlanır.
3
If Yapısı
• Bazı şartların gerçekleşmesi durumunda kodların çalıştırılmasına imkan veren bir yapıdır.
• Şartın gerçekleşmesi halinde Then deyiminden sonraki, aksi halde Else deyiminden sonraki satırlar işletilir.
• Else bloğu istenirse verilmeyebilir.• Ayrıca tek satırda şart yazılıyorsa End if deyimi
kullanılmaz.
If Şart ThenKomutlar
ElseKomutlar
End If
If Şart ThenKomutlar
ElseKomutlar
End If
4
Örnek
5
Örnek
6
Örnek
7
Select Case Yapısı
• Bir değişkenin aldığı bir çok değere göre ayrı komutların çalıştırılması gereken durumlar için Case yapısı kullanılır.
Select Case DeğişkenCase Durum1 :Komutlar Case Durum2, Durum3 :Komutlar Case Durum4 to Durum7 :Komutlar Case is < Durum8 :Komutlar Case is > Durum9 :Komutlar …Case Durum N :Komutlar Case Else: Komutlar
End Select
Select Case DeğişkenCase Durum1 :Komutlar Case Durum2, Durum3 :Komutlar Case Durum4 to Durum7 :Komutlar Case is < Durum8 :Komutlar Case is > Durum9 :Komutlar …Case Durum N :Komutlar Case Else: Komutlar
End Select
8
Örnek
9
IIF
• Bir değişkenin değeri iki durumdan birine göre değer alıyorsa if yapısı yerine IIF kullanılabilir.
IFF(şart;doğru ise; yanlış ise)IFF(şart;doğru ise; yanlış ise)
10
Choose Yapısı
• Bir değişkenin aldığı değer bir sayıya bağlı ise Choose yapısı kullanılır
Sonuç= Choose(Sayı, deger1, deger2, … , deger N)Sonuç= Choose(Sayı, deger1, deger2, … , deger N)
gun= Choose(GunNo,”Pa”, “Pt”,”Sa”,”Çar”, “Per”, “Cum”, “Ctesi”)gun= Choose(GunNo,”Pa”, “Pt”,”Sa”,”Çar”, “Per”, “Cum”, “Ctesi”)
1
5
11
Switch
• Switch fonksiyonunda birden fazla şartı aynı satırda kontrol etmek mümkündür.
Sonuç= Switch(şart1,deger1, şart2, deger2, … ,şartN, deger N)Sonuç= Switch(şart1,deger1, şart2, deger2, … ,şartN, deger N)
Dim nn=Val(InputBox(“Notunuz”))Print Switch(n>0 and n<40,”kotu”, n>=40 and n<60, “orta”, n>=60 “iyi”)
Dim nn=Val(InputBox(“Notunuz”))Print Switch(n>0 and n<40,”kotu”, n>=40 and n<60, “orta”, n>=60 “iyi”)
12
Döngü Deyimleri
• Belirli bir komut parçasını belirli şartlar gerçekleşinceye kadar defalarca çalışmasını sağlayan yapılardır.Çalışma Sayısı Belirli ise
- For … Next,
Diğer Durumda - While… Wend, - Do… Loop,
Döngüleri kullanılır.
13
For … Next
• For döngüsü sayacın “BaşlangıçDeğeri”nden başlayarak “BitişDeğeri”ne kadar birer artarak Next’e kadar olan komutları çalıştırır.
• Eğer sayacın birer birer değil de belirleyeceğimiz aralıklarla artıp azalmasını istiyorsanız step parametresinden sonra “Artım” miktarını yazmanız gerekir.
• Başlangıç değeri bitiş değerinden küçük ise döngüye hiç girilmeyecektir.
• Sayacın azalarak çalışması isteniyorsa, BaşlangıçDeğeri BitişDeğerinden büyük ve step’ten sonraki Artım değeri negatif sayı olmalıdır.
For sayaç= BaşangıçDeğeri to BitişDeğeri [Step Artım]Komutlar
Next
For sayaç= BaşangıçDeğeri to BitişDeğeri [Step Artım]Komutlar
Next
14
For …. Next Örneği
15
For …. Next Örneği
16
For …. Next Örneği
17
For Döngüsü Örneği
18
While-Wend ve Do-Loop Döngüleri
• Bir döngünün kaç defa çalışacağı önceden bilinmiyor ancak belirli şartlar sağlandığı sürece işlemleri tekrar etmesi isteniyor ise while döngüleri kullanılır.
While şart Komutlar
Wend
While şart Komutlar
Wend
Do While şart Komutlar
loop
Do While şart Komutlar
loop
DoKomutlar
loop While şart
DoKomutlar
loop While şart
Do Until şart Komutlar
loop
Do Until şart Komutlar
loop
DoKomutlar
loop Until şart
DoKomutlar
loop Until şart
Komutlar en az bir kez çalışırŞart sağlanırsa komutlar çalışır
19
While-Wend ve Do-Loop Döngüleri- Örnekler
20
Exit Do & Exit For İfadeleri
• Exit Do komutu Do-Loop, While Wend döngülerinde bazı şartlar sağlandığında döngüden çıkmak için kullanılır.
• Exit For For next döngüsünden çıkmak için kullanılır
21
Exit Sub, Exit Function, End
• Exit Sub ve Exit Function Alt programları sonlandırmak için kullanılır.
• End, Programı sonlandırmak için kullanılır.
22
With… End with
• Bir kontrole ait bir özellik değiştirilmek istendiğinde veya bir metod çağrıldığı durumlarda kontrol adının verilmesi gerekir,– Örneğin: Text1.left =0
• Herhangi bir kontrol elemanının birden fazla özelliğini değiştirmek ya da metodlarına ulaşmak için with … End with bloğu kolaylık sağlar
With kontrol_adı.özellik1= deger1.özellik2= deger2…
End With
With kontrol_adı.özellik1= deger1.özellik2= deger2…
End With
With text1.clear.text = “eskisehir”.height= 300.width = 1500
End With
With text1.clear.text = “eskisehir”.height= 300.width = 1500
End With
23
Operatörler
= Atama x=5
+ Toplama Print 20+5 25
- Çıkarma Print 10-5 5
* Çarpma Print 3*5 15
/ Bölme Print 9/2 4.5
\ Tam Bölme Print 9\2 4
& String toplama Print "Bayram" & "paşa" Bayrampaşa
^ Üst Print 4^2 16
Mod Bölmeden Kalan Print 5 Mod 2 1
And Ve Print 5 And 17 1 : 00101 And 10001= 00001
Or Veya Print 7 Or 17 23 (00111 Or 10001 = 10111)
Xor Xor Print 7 Xor 17 22 (00111 Xor 10001 = 10110)
Not Değil Print Not &H1 &HFFFE
Not 0000 0000 0000 0001 = 1111 1111 1111 1110
24
Üst ve Mod İşlemleri
Üst işlemlerinin özelliğinden dolayı ^operatörü yüksek dereceden kökleri bulmak için de kullanılır.
Mod işlemi bir sayının bir başka sayıya bölümünden kalanı verir.Bir sayı başka bir sayının tam katı ise o sayıya bölümünden kalan
sıfır olacaktır.Dim i, top As integer For i=1 to 100
top=top+iIf (i Mod 10) = 0 Then Print top
NextPrint “sonuç :” & top
Dim i, top As integer For i=1 to 100
top=top+iIf (i Mod 10) = 0 Then Print top
NextPrint “sonuç :” & top
3 81Print 81^(1/3) Print 81^(1/3)
25
Lojik İşlemler
• And, Or, Xor ve Not operatörleri Lojik operatörlerdir ve bit seviyesinde işlem yaparlar. Bu operatörlerin bit seviyesinde yaptıkları işlem tabloları şöyledir.
0 And 0 00 And 1 01 And 0 01 And 1 1
0 Or 0 00 Or 1 11 Or 0 11 Or 1 1
0 XOr 0 00 XOr 1 11 XOr 0 11 XOr 1 0
Not 0 1Not 1 0
26
Karşılaştırma İşlemleri
= EşitIf x=5 Then Print “5” Else “5 degil”
<> Eşit DeğilIf x<>5 Then Print “ 5 degil” Else “5”
< Küçük If x<5 Then Print “5 den küçük” Else “5 veya büyük”
> Büyük If x>5 Then Print “5 den büyük ” Else “5 veya küçük”
<= Küçük veya Eşit If x<=5 Then Print “5 veya küçük” Else “5 den büyük”
>= Büyük veya Eşit If x>=5 Then Print “5 veya büyük” Else “5 ten küçük”
27
Karşılaştırma İşlemleri
• Like operatörü ile stringler üzerinde daha detaylı karşılaştırma işlemleri yapılabilmektedir.
? Herhangi bir karakter If x Like “?abc” Then
vabc,
xabc,
Zabc
# Herhangi bir rakam If x Like “#abc” Then
1abc,
5abc,
9abc
* Bir veya daha fazla karakter
If x Like “*abc” Then
araabc,
deneabc,
a13abc
[aralık] Verilen aralıkta bir karakter
If x Like “[a-f]abc” Then
aabc,
eabc,
Fabc
[!aralık] Verilen aralık dışında bir karakter
If x Like “[!a-f]abc” Then gabc
Habc
28
İşlem Önceliği
• VB’de İşlem önceliği, her zaman parantez içi önce olmak üzere aşağıdaki gibidir.
Aritmetik >> Karşılaştırma>>Lojik
• Tabloda verilen Aritmetik, Karşılaştırma ve Lojik operatörlerin öncelikleri yukarıdan aşağıya doğru azalan şekildedir.
• Aynı önceliğe sahip operatörlerden öncelik soldan sağa doğru azalı
Aritmetik Karşılaştırma Lojik
^ = Not
Negatiflik (-) <> And
* , / < Or
\ > Xor
Mod <= Eqv
+, - >= Imp
& Like
is
Print 4+7*2-2/2^3*20 or (8+2)*4Print 4+7*2-2/2^3*20 or (8+2)*4
4+7*2-2/8 *20 or 10*4
4+14 -.25 *20 or 40
4+14 - 5 or 40
13 or 40