visualbasic 131004074619-phpapp01

100
Microsoft Visual Basic 6.0

Upload: flashflash23

Post on 09-Aug-2015

68 views

Category:

Documents


5 download

TRANSCRIPT

Microsoft

Visual Basic6.0

Microsoft Basic kelime anlamı?

Visual Basic dilini tanımadan önce kelime anlamının ne olduğuna bir bakalım.

"Visual" kelimesinin anlamı "Görsel", "BASIC" kelimesinin anlamı da "Beginners All - purpose Symbolic Instruction Code

(Yeni Başlayanlar İçin Çok Amaçlı Sembolik Talimat Kodu)"

kelimesinin baş harflerinin kısaltması ile oluşturulmuş bir dildir.

Visual Basic Nedir ?

Windows uygulama geliştirme aracıdır. VB`nin Windows tabanlı olması kullanıcısına bir göz

aşinalığı sağlamaktadır. Görsel bir dil oluşu ile de öğrenim süresi kısalmış ve

Windows ortamları için önemli bir program geliştirme aracı haline gelmiştir.

(Unutmayınız ki Windows ortamında herşey birer Form`dur)

Visual Basic Özellikleri - 1

Windows uygulama geliştirme aracı olarak karşımıza çıkan VB,karakteristik işletim sistemi geliştirme araçlarında olduğu gibi kullanıcı taraflı klavye ağırlıklı bir dil değildir. Bu geliştirme ortamına Text - Mod Geliştirme Ortamı diyebiliriz. Bu ortamda kullanıclar seçim için klavye kullanırken Windows ortamında genellikle fare kullanılır.

VB dili nesnel bir programlama dilidir. Nesne tabanlı programlama dillerinde üç ana amaç vardır. Bunlar; nesne hakkında bilgi verilmesi, nesnenin bir diğer nesne üzerine kurulabilmesi ve belli bir işlemin birçok nesne tarafından kullanılmasıdır. 

Visual Basic Özellikleri - 2

VB Olay - Temelli bir programlama dilidir. Yani bir kullanıcı o an hangi olayı yapmak isterse o nesneye ait olaylarını, özelliklerini kullanabilir zira her nesnenin kendine ait bir olay ve özellik örgüsü vardır. 

VB dili Tümleşik Program geliştirme ortamı olarak kabul edilir. Tümleşik Ortamlar size Ekran Tasarımı, Kod Yazma, Hataları Farkedip Anında Giderme, Program Paketleme, Veritabanı Etkileşimi ve diğer birçok olanaklar gibi yararlar sağlar. 

Son olarak da Visual Basic dilinin hangi kısımlardan oluştuğuna bir bakalım. VB dili kullanıcı arabirimi, bilgi işleme, bilgi saklama, rapor işlemleri birimlerinden oluşur.

Visual Basic Özellikleri - 3

Visual Basic dizini...

• Visual Basic yüklenmiş bir bilgisayarda , VB ile ilgili ilgili program dosyaları standart olarak C dizininin:C:\Program Files\Microsoft Visual Studio\alt dizinine yerleştirilir.

• Kullanıcıların oluşturdukları projeler ise standart olarak:C:\Program Files\Microsoft Visual Studio\Vb98dizinine yerleştirilir.

Visual Basic Çalıştırma

• Başlat menüsünü kullanarak >> Start + All Programs + Microsoft Visual Basic 6 komutuna tıklanarak program çalıştırılır.

Visual Basic ilk ekran !• “Standart EXE” seçeneği temeldir.

Seçtikten sonra “Open” komutuna tıklayınız.

• New: yeni proje• Existing: varsayılan kayıt yeri

• Recent: son çalışılan projeler

Visual Basic

-“Standart EXE” seçeneği temeldir.

Seçtikten sonra “Open” komutuna tıklayınız.

Form

ToolBox (Araç Kutusu)

Özellikler Penceresi

Araç Çubuğu

Araç Kutusu (Toolbox)

Standart Visual Basic Kontrolleri ve İşlevleri -1

PictureBox (Resim Kutusu) =Bitmap, Icon, GIF resimlerin gösterilmesini sağlar.Label(Etiket) =Sadece bilgi vermek yada görüntü olarak form üzerinde durur. Genellikle metin kutularının adlarını göstermek için kullanılır.TextBox(Metin Kutusu) =Genellikle veri girişi için kullanılan bir kontroldür. Hemen hemen bütün programlarda kullanıcılardan veri girişi, değiştirme yapması gereken alanlar gerekir. İşte metin kutusunu bu amaçla kullanabiliriz...Frame (Çerçeve) =Kontrolleri gruplamak için kullanılır.Command Button (Komut Düğmesi)=Bir işlemin başlatılmasını sağlar. Genellikle fare üzerine tıklanarak kullanılır.CheckBox (İşaret Kutusu)=Bir seçim yapmayı sağlar.OptionBox (Seçenek Kutusu)=Seçim yapmayı sağlar.

ListBox (Liste Kutusu) =Birçok elemanı liste biçiminde göstermek için kullanılır HscrollBar (Yatay Kaydırma Çubuğu)=Yatay olarak kullanılan kaydırma çubuğuVscrollBar (Dikey Kaydırma Çubuğu)=Dikey olarak kullanılan kaydırma çubuğuTimer (Zamanlayıcı)=Zamanın takip edilmesini sağlar.DriveListBox (Sürücü Listesi)=Sistemdeki sürücüleri listeler.DirListBox (Dizin Listesi)=Sistemdeki dizinleri (klasörleri) listeler.FileListBox (Dosya Listesi)=Bir dizin içindeki dosyaları listeler.Shape (Şekil)=Şekil çizmeyi sağlar.Line (Çizgi)=Çizgi çizmek için kullanılır.Image (İmaj)=Sadece resimleri göstermek için kullanılır.Data (Veri)=Verileri göstermek için kullanılır.

Standart Visual Basic Kontrolleri ve İşlevleri -2

AraçKutusunu gösterir.

Projenin Kodlarını gösterir.

Özellikler Penceresini gösterir.

Menü Araç Çubuğu + View

Formu Gösterir.

Formu kenarlarından tutarak büyültebilirsiniz. Toolbox içinden aldığınız nesneleri üstünde çizebilirsiniz veya çift tılayarak yerleştirebilirsiniz.

Form penceresi

Kod Penceresi

Kod ekranı sağdaki pencerede görülmektedir. Formda boş bir noktaya tıkladıktan sonra F7 tuşu ile veya bir komuta tıklayarak ekrana getirebilirsiniz.

Burada önemli olan nokta Kod başlangıç satırıdır...

Kod İçerisine Açıklama Ekleme

Koda açıklama eklenmek istenirse ‘ tek tırnak açıklamanın başına konulur.

Form Metodları- 2. bir form oluşturma-Geçişler

Metodlar, nesnelere doğrudan yaptırmak istediğimiz işleri belirtmek için kullanılır. en sık kullanılan metodlar şunlardır:

Show Metodu: Formun ekranda görüntülenmesini sağlar. Metod ile nesne ismi arasına nokta işareti (.) konur.

Dizilim: Form ismi.Show Örnek: Form1.Show

Hide Metodu: Formun görüntüsünü ekrandan kaldırır, formu saklar. Hide metoduyla saklanan form arka planda çalışmasına devam eder.

Dizilim: Form ismi.Hide Örnek: Form1.Hide

Veya tamamen kapatmak için End yazılır.

RUN MENÜSÜ

Run

Geliştirdiğiniz projeyi çalıştırmak için kullanılır. F5 tuşu da kullanılabilir.

Start With Full Compile

Start komutu ile Visual Basic sadece aktif kodu ve ilişkili kısımları derler ve çalıştırır. Belli bir anda projenizin tümünün derlenerek çalıştırılmasını istiyorsanız bu altenatifi seçmelisiniz.

Break

Normal akışını sürdüren programı durdurur ve programın çalışması breake modda sürdürülür. Bu menü altenatifi sadece Run Time’da kullanılabilir. Breake modda programın kaynak kodunda yapılan bazı değişikliklerin çalışması için programın yeniden başlatılması gerekir.

RUN MENÜSÜ

End

Kodlanan programi durdurarak Visual Basic’in kullandiği tüm sistem kaynaklarini iade eder.

Restart

Kodlaması durdurulmuş olan programin yeniden çalışmasını sağlar.

RUN MENÜSÜ

Nesnelere İsim verme (Caption)

Önce Sonra

Nesnelere İsim verme

Private Sub Form_Load()

'form başlığını ver

Form1.Caption = "HESAP MAKİNESİ"

'etiketlerin içeriğini yaz

Label1.Caption = "1. sayı değeri"

Label2.Caption = "2. sayı değeri"

Label3.Caption = "SONUÇ"

'Blgi kutularını boşalt

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

Devamı....

'Komut butonlarının adlarını ver

Command1.Caption = "Topla"

Command2.Caption = "Çıkar"

Command3.Caption = "Böl"

Command4.Caption = "Çarp"

'text3 ü yazmaya karşı koruyor

Text3.Locked = True

End Sub

Basit Bir Örnek (temel adımlar)

1. Yeni bir “Form” açın.

2. Forma bir “Button” ekleyin.

3. Buton seçili iken özelliklerine girin. (Properties)

4. Buradan “Caption” seçeneğine “Başla” olarak değiştirin.

5. Butonun üzerine çift tıklayın veya sağ tıklayıp “View Code” komutuna tıklayın.

6. MsgBox ("BAŞARDINIZ")

7. Çalıştırın: F5 veya (Run + Start)

Bir örnek (makine kodu mantığı) 3 x 5 = ?

Dim a,b,c as integer

Değişken Tanımı

Visaul Basic’te değişkenlerin türünü belirtmek için “Dim, Public, Private, ReDim” deyimlerinden biri kullanılır.

Dim a,b,c as integer

Dim a as integer, b as integer, c as integer

Dim a as integer Dim b as integerDim c as integer

•Mutlaka bir harf ile başlar. •Özel amaçlı nokta, virgül, parantez, artı, yıldız, boşluk gibi

işaretleri içeremez. •En fazla 255 harf ve/veya rakamdan oluşur. •VB de kullanılan özel kelimeler değişken olarak

kullanılamaz(örneğin End) Çç İı Ğğ Öö Şş gibi Türkçe’ye özgü karakterler düz yazı

dışında kullanılamaz. IV, LC gibi Romen rakamları kullanılamaz.

Değişken Tanımında Kurallar

Veri Tipleri

Veri Tipi Kullandığı Byte İçerik Aralığı Açıklama

Byte 1 0 den 255 kadar Tam sayı

Integer 2 -32768 den 32767 kadar Tam sayı

Long 4 -2 147 483 648 den 2 147 483 647 kadar Tam sayı

Single 4 ± 3.402823E38 den ± 1.401298E-45 kadar Ondalık sayı

Double 8 ± 1.79769313486232E308 den ± 4.94065645841247E-324 kadar

Ondalık sayı

Boolean 2 True veya False Mantıksal

String 10 + karakter sayısı

Sadece harflerden, rakamlardan ve özel işaretlerden oluşan dizi depolanabilir

Alfa sayısal

Decimal 14 +/-79 228 162 514 264 337 593 543 950 335 Tam/ondalık sayı

Variant 16 Herhangi bir sayısal değer içerebilir, ancak aralığı Double ile aynı

Herhangi bir tip

Date 8 1 Ocak 100 gününden 31 Aralık 9999 gününe kadar Tarih için

Currency 8 +/- 922 337 203 685 477.5807 (noktadan sonra sadece 4 hane)

Para hesabı için

Bazı Matematiksel ve Mantıksal İfadeler (Operatörler)

^ = Üs alma Mod = Kalanlı bölme* = Çarpma & (+) = String birleştirme/ = Bölme\ = Tamsayı Bölme+ = Toplama, - = Çıkarma() = Parantez içi işlemler

Karşılaştırma - ilişki Operatörü  Anlamı  =  Eşit  <>  Eşit değil  <  ... den küçük  >  ... den büyük  <=  Küçük veya eşit  >=  Büyük veya eşit

İŞLEM SIRASI KURALI

Önce üs alma, sonra çarpma ve bölmeler ve daha sonra da toplama çıkarmalar yapılır.

Çarpma ve bölme (veya toplama ve çıkarma) gibi eşdeğer işlemlerde hesap soldan sağa doğru sıra ile yapılır.

Parantezli ifadeler (varsa), yukarıdaki kurala uygun olarak ve en içteki parantezli ifadeden başlanarak, ilk önce hesaplanır.

Visual Basic’de kullanılan bu oparatörlerde öncelik sırası vardır. Öncelik sıraları aşağıda verilmiştir.

 

( )                    ‘Parantez içerisindeki ifadeler önceliğe sahiptir

^                      ‘Üs alma

*/                     ‘Çarpma ve bölme

\                       ‘Tamsayı bölme

Mod                 ‘Kalanlı Bölme

+ -                   ‘Toplama ve çıkarma

Örnek

Dim Sayi As Integer

Sayi= 70 + 80 / 2                    ‘Sonuc 110

Sayi= ( 70 + 80 )  / 2              ‘Sonuc 75

Örnekler

Dim Sayı1 As Integer, Sayı2 As Integer        '2 Tane TamSayı değişken tanımlıyoruz..

Sayı1 = 9

Sayı2 = 2                                ' Değişkenlere değer atıyoruz..

Sonuc = Sayı1  +  Sayı2        ' Sonuc 11

Sonuc = Sayı1  -   Sayı2        ' Sonuc 7

Sonuc = Sayı1  *  Sayı2         ' Sonuc 18

Sonuc = Sayı1  /   Sayı2        ' Sonuc 4,5

Sonuc = Sayı1  \   Sayı2        ' Sonuc 4 . Bu işlem çıkan değerin sadece tamsayı kısmını alır

Sonuc = Sayı1  ^  Sayı2         ' Sonuc 81

Sonuc = Sayı1  Mod  Sayı2 ‘ Sonuc 1. Bölme işlemi yapıldı ve sonuc olarak kalanı verdi.

CheckBox & OptionBox

CheckBox & OptionBox

Private Sub Check1_Click()

If Check1.Value = 1 Then

Label1.FontBold = True

Else

Label1.FontBold = False

End If

End Sub

Private Sub Check2_Click()If Check2.Value = 1 ThenLabel1.FontItalic = TrueElseLabel1.FontItalic = FalseEnd IfEnd Sub

Private Sub Check3_Click()If Check3.Value = 1 ThenLabel1.FontUnderline = TrueElseLabel1.FontItalic = FalseEnd IfEnd Sub

Private Sub Option1_Click()If Option1.Value = True ThenLabel1.ForeColor = vbRedEnd IfEnd Sub

Private Sub Option2_Click()If Option2.Value = True ThenLabel1.ForeColor = vbBlueEnd IfEnd Sub

Private Sub Option3_Click()If Option3.Value = True ThenLabel1.ForeColor = vbYellowEnd IfEnd Sub

Kontrol Nesnelerinin Özellikleri

Private Sub Form_Load() Show FontSize = 16 FontName = "Verdana" Print "İLKER ÇAPLI" FontBold = True Print "Kodkolik.Com" FontBold = False FontItalic = True Print "Visual Basic Dersleri" FontItalic = False Print "Visual Basic Eğitim Kitabı" End Sub

Örnek

Dim Ad As String, Soyad As String, AdSoyad As String

Ad=”Uğur”

Soyad=”Şahin”

AdSoyad = Ad & Soyad                     ‘AdSoyad değişkenin

değeri “UğurŞahin”

AdSoyad = Ad  & “ “ &  Soyad           ‘AdSoyad değişkenin

değeri “Uğur Şahin”

Kontrol Nesnelerinin Özellikleri

MsgBox Deyimine ait Sabit Bilgileri

Seçili düğme(çevresi kesik çizgili)

Tıklanan düğme=MsgBox(mesaj, düğmeler+Seçili düğme+simge, başlık)

Değer VB Sabiti Karşı Gelen Sembol

16 VbCritical Stop sembolü hata

32 VbQuestion Soru işareti sembolü

48 VbExclamation Ünlem sembolü

64 VbInformation Bilgi Sembolü

MsgBox Deyimine ait Sabit Bilgileri

Değer Butonlar

1 Ok , Cancel (Tamam – İptal)

2 Abort, Retry,Ignore (Durdur-Yeniden Dene – Yoksay)

3 Yes,No,Cancel ( Evet – Hayır – İptal)

4 Yes , No ( Evet - Hayır)

5 Retry, Cancel ( Yeniden Dene - İptal)

MsgBox Deyimine ait Sabit Bilgileri

Değer Karşılık gelen buton1 OK (Tamam)2 Cancel (İptal)3 Cancel (İptal)4 Retry (Yeniden Dene)5 Ignore (Yoksay)6 Yes (Evet)7 No (Hayır)

MsgBox Deyimine ait Sabit Bilgileri

Private Sub Form_load()

Dim Cevap As Integer

Cevap = MsgBox("Programdan çıkmak istediğinizde emin misiniz?", 20, "Brain")

If Cevap = 6 Then

Cancel = True

End If

End Sub

MsgBox Deyimine ait Sabit Bilgileri

Private Sub Command1_Click()

Dim a, b, c As Integer

a = MsgBox("Değişiklikler Kaydedilsin mi?", 4 + 16 + 256, "MsgBox Fonksiyonu")

c = 10

If a = vbYes Then

b = c * 10

Else

b = c * 2

End If

Print b

End Sub

Sonuç;Yes butonuna basınca 100, No butonuna basınca 20 olur veya,

MsgBox Deyimine ait Sabit Bilgileri

veya,

Private Sub Command1_Click()Dim a, b, c as Integera = MsgBox("Değişiklikler Kaydedilsin mi?", 4 + 16 + 256, " MsgBox

Fonksiyonu")c = 10If a = 6 Thenb = c * 10Elseb = c * 2End IfPrint b

End Sub

MsgBox Deyimine ait Sabit Bilgileri

Shell (program çalıştırma) fonksiyonu

Shell fonksiyonu Visual Basic kodları kullanılarak, sistemde bulunan .EXE, .COM,.BAT veya .PIF uzantılı dosyaları aktif hale getirmek (çalıştırmak) için kullanılır. Yani, örneğin herhangi bir kontrol nesnesi bir uygulama programına (örneğin Microsoft Word) yönlendirilerek bu programın çalışması sağlanabilir. Bu fonksiyonun genel

Kullanılış şekli; HerHangiBirDeğişkenAdı = Shell (Çalıştırılacak program yolu ve adı,

aktivasyon türü) Şeklindedir. Bu komut dizisindeki Aktivasyon Türü seçeneği 0 ile 6 arasında (5hariç) değer alabilir. Bu değerlerin karşılıklar:

Yukarıdaki form tasarımına ait Shell uygulaması verilmiştir.

Shell (program çalıştırma) fonksiyonu

Aşağıdaki örnekte, Microsoft Word ve Excel programları ile bir oyun programınınshell fonksiyonu ile açılması gösterilmektedir. Bu örnekte kullanılan kodlardaçalıştırılan programların yolları bilgisayarlara göre değişiklik gösterebilir.

Veri Tipleri Arasında Dönüşüm

Bu programda, Double tipindeki d’nin değeri, Integer tipteki C’ye atanarak otomatik olarak Integer’e dönüştürelecektir.

Bu programda, Double tipindeki d’nin değeri, Integer tipteki C’ye atanarak otomatik olarak Integer’e dönüştürelecektir.

Veri Tipleri Arasında Dönüşüm

Girilen Sayının Karesinin ve Kübünün Bulunması

Yeni bir “Form” açın. Forma 3 “Label” 3 “Text” ve 1 adet “Button” ekleyin.

Girilen Sayının Karesinin ve Kübünün Bulunması

1. Yeni bir “Form” açın.

2. Forma 3 “Label” 3 “Text” ve 1 adet “Button” ekleyin.

Üs ifadesi

End

4 İşlem

String

Metin Girdisi

+ Yan yana Yazmayı sağlar.

as String

Date Değişkeni

Tarih türündeki bilgileri kullanmak için oluşturulmuş bir veri tipidir. Hafızada 8byte yer kaplarlar. 1 Ocak ile 31 Aralık 9999 arasındaki tarihleri kullanabilirsiniz.DefDate bildirisi ile tarih türünde degişkenler tanımlayabiliriz.

Örnek :

Private Sub Form_Load()

Dim Dogum_tarihi As Date , Evlenme_Tarihi As DateDogum_tarihi =#Dec,9,1977#Evlenme_Tarihi=#May,15,1998#

End Sub

Date Değişkeni

Sistem zamanını gösterir.

Örnek

Private Sub Command1_Click()

Dim zamanMsgBox ("Sistem Tarihi : ") & Time

End Sub

Time Değişkeni

InputBox Fonksiyonu

Programın çalışması esnasında kullanıcıdan bilgi almak istediğimiz zaman bu fonksiyonu kullanabiliriz. Örnek:

Değişken = InputBox (“Mesaj”, Başlık, Varsayım, Xpozisyonu, Ypozisyonu)

Private Sub Command1_Click()Dim ad As Stringad = InputBox("Şehir Adını Giriniz : ?")Print adEnd Sub

Bu fonksiyondan geri dönen değer karakter türünde bir bilgidir. Eğer değişik veri tiplerinde bilgi almak istiyorsak bu aldığımız string türündeki veriyi o veri tipine dönüştürmek zorundayız.

Sayısal veri için    :i=Val(InputBox("Yaşınızı giriniz ..."))

Private Sub Command1_Click()Dim ad As Stringad = InputBox("Şehir Adını Giriniz : ?", " Giriş Kutusu Başlığı")Print adEnd Sub

InputBox Fonksiyonu

İki tane arka arkaya sayı girilerek girilen iki sayının toplamı MsgBox ile bize bildirilsin.

Private Sub Command1_Click()Dim a As IntegerDim b As IntegerDim c As IntegerDim d As Integera = InputBox("1. sayıyı giriniz")b = InputBox("2. sayıyı giriniz")c = a + bMsgBox("iki sayının toplamı = " & c & , 64)End Sub

InputBox Fonksiyonu

Bir şifre sorgulaması

Örnek: Program yüklenirken ve form görüntülenmeden önce kullanıcıya şifresi sorulsun istiyoruz.

Bunun için InputBox penceresini kullanalım. Kullanıcı doğru şifreyi girerek InputBox üzerindeki Ok düğmesini tıkladığında form açılsın, kullanıcı programı kullanabilsin.

Yanlış şifre girmesi durumunda program yüklenmesin. Şifremiz Deve olsun. Gerekli kodları formun Load olayına yazacağız.

Kontrol Komutları

IF – ELSE –ELSE IFSELECT – CASE

FOR – LOOPDO -WHILE

IF / ELSE Sorgusu

1.If (koşul) Then (işlem)

2.If (koşul) Then(işlem1)Else(işlem2)End if

3.If (koşul1) Then(işlem1)ElseIf (koşul2) Then(işlem2)Else(işlem-n)End if

If deyimi belli bir ifadenin değerine göre bir deyimin işletilmesini sağlar. If deyiminin basitten karmaşığa doğru değişik kalıpları vardır:

IF / ELSE %18 KDV Hesabı

IF / ELSE Geçti - Kaldı

IF / ELSE Sabit Sayıdan Sayı Büyük - Küçük

Ortalama

Dim Sinav1 As Byte

Dim Sinav2 As Byte

Dim Ortalama As Byte

Sinav1 = 80

Sinav1 = 60

Ortalama = ( Sinav1 + Sinav2 ) / 2               ‘Ortalama 70

If Ortalama >= 50  Then 

Label1.Caption = “Kazandınız!..”

Else

Label1.Caption = “Kaybettiniz!..”

End If

If...Then karar yapısında birden fazla koşulu kontrol ederken Else If sözdizimini kullanırız.

Dim Sinav1 As ByteDim Sinav2 As ByteDim Ortalama As Byte

Ortalama = ( Sinav1 + Sinav2 ) / 2 If Ortalama >= 85 Then

Label1.Caption = “Takdir Aldınız!..”Else If Ortalama >= 75

Label1.Caption = “Teşekkür Aldınız!..”Else If Ortalama >= 50

Label1.Caption = “Sınıfınızı Geçtiniz!..”Else

Label1.Caption = “Sınıfta Kaldınız!..”End If

IF / ELSE 3 Sayıdan Hangisi En Büyük

Örnekte; Ekrandan Inputbox ile alınan üç sayının en büyüğü bulunur:

IF – ELSE --- GoTo kullanımı

Dim kadi, pass As String

kadi:

kadi = InputBox(“Kullanıcı adını giriniz”, “Kullanıcı Adı”, “”)

pass:

pass = InputBox(“Şifrenizi giriniz”, “Şifre Girişi”, “”)

If kadi = “visual” Then

If pass = “1234” Then

MsgBox (“Hoşgeldiniz” & “Yetkileriniz:Administrator”)

Else

MsgBox (“Hatalı şifre girdiniz. Tekrar deneyin”)

GoTo pass

Else

MsgBox (Hatalı kullanıcı adı. Tekrar girin”)

Goto kadi

End If

AND - OR

Dim Sayi1, Sayi2 As Integer Sayi1 = Val(InputBox("Birinci Sayıyı Giriniz")) Sayi2 = Val(InputBox("İkinci Sayıyı Giriniz")) If Sayi1 < 100 And Sayi2 < 100 Then MsgBox "Girdiğiniz iki sayıda 100'den Küçük" ElseIf Sayi1 < 100 Or Sayi2 < 100 Then MsgBox "Girdiğiniz iki sayıdan biri 100 den küçük" ElseIf Sayi1 > 100 And Sayi2 > 100 Then MsgBox "Girdiğiniz iki sayıda 100'den Büyük" ElseIf Sayi1 > 100 Or Sayi2 > 100 Then MsgBox "Girdiğiniz iki sayıdan biri 100 den Büyük" ElseIf Sayi1 = 100 And Sayi2 = 100 Then MsgBox "Girdiğiniz iki sayıda 100'e eşit" ElseIf Sayi1 = 100 Or Sayi2 = 100 Then MsgBox "Girdiğiniz iki sayıdan biri 100'e eşit«End If

SELECT / CASE

If...Then karar yapısının gelişmişidir. Sadece bir değişkenin durumunu kontrol eder. Kontrolu yapılacak değişken birden fazla değer alabiliyorsa If...Then yapısına oranla daha kulanışlıdır. Kullanım şekli aşağıdaki gibidir.

Kullanımı Kalıbı

select case değişkencasecaseend select

SELECT / CASE

Klavyede 0 - 5 arasında bir rakam girilecek ve ne girildiğini msgbox la bize göstersin

Private Sub Form_Load()

Dim a As Integer

a = InputBox("1 - 5 arasında bir sayı giriniz")

Select Case a

Case 1

MsgBox ("girilen sayı 1'dir")

Case 2

MsgBox ("girilen sayı 2'dir")

Case 3

MsgBox ("girilen sayı 3'dür")

Case 4

MsgBox ("girilen sayı 4'dür")

Case 5

MsgBox ("girilen sayı 5'dir")

'ikinci bölüm 'mesala 8 rakamini girinCase ElseMsgBox ("boyle bir sayi girilemez")End SelectEnd Sub

SELECT / CASE Şifre

Private Sub Command1_Click()

Select Case Text1.Text

Case Is = " "

MsgBox " Biyeri Boş Bırakmışsınız.. "

Case Is = "visual«

If Text2.Text = "1234" Then

MsgBox ("Hoşgeldiniz/Welcome")

Case Else

MsgBox "Üzgünüz.Böyle bir kullanıcı adı bulunmamaktadır."

End Select

End Sub

SELECT / CASE Not Ortalaması

FOR / NEXT

Bir grup deyimi belli sayıda çalıştırarak bir döngü oluşturur. Döngü bir kez işledikten sonra artırım değeri eklenir. Eğer herhangi bir artırım değeri kullanılmadıysa o zaman bir arttırılır. Sayaç değeri bitiş değerinden büyük olduğu zaman döngü sona erdirilir ve program Next deyiminden itibaren devam eder.Döngü değimleri amaç değişkenlerin değerlerini belli aralıklarla yaptırmak. Belli aralıklardaki sayıların toplamı , çıkartmak, çarpmak

DÖNGÜ (ÇEVRİM-LOOP) YAPILARI

Dim Sayac As Integer

For Sayac = 1 To 10

List1.AddItem Sayac

Next Sayac

Liste kutusuna 1’den 10 kadar olan rakamları eklemek için aşağıdaki döngü kurulur.

FOR / NEXT

Private Sub Form_Load()

Dim Sayac As Integer

For Sayac = 2 To 20 Step 2

List1.AddItem Sayac

Next Sayac

End Sub

Liste kutusuna 2’şer 2’şer 20’ye kadar olan rakamları eklemek için aşağıdaki döngü kurulur.

FOR / NEXT

Dim Sayac As Integer

For Sayac = 2 To 20 Step 2

List1.AddItem Sayac

If Sayac=10 Then

Exit For

End If

Next Sayac

For..Next döngüsünden çıkmak için Exit For bildirisi kullanılır

FOR / NEXT

Adımlama azalan biçimde de yapılabilir:

For sayi = 16 to 2 Step -2

Toplam = Toplam + 2

Next Sayi

MsgBox ‘’toplam: ‘’ & Toplam

End Sub

FOR / NEXT

Örnek: Birden yirmiye kadar sayıların toplamını alır:

FOR / NEXT

Örnek: Belirlenen belli bir sayıda ki sayıyı toplayarak bize sonucu bir mesaj kutusunda görüntüler.

FOR / NEXT

Kullanıcının textlere girdiği sayılar dahil arasında kalan sayıların toplamını mesaj kutusunda verir.

FOR / NEXT

FOR / NEXT

KALAN PARA HESABIFOR / NEXT

FOR / NEXT

Faktöriyel Hesabı

( ! ) sembolü ile gösterilir.örneğin n! demek 1'den n'e kadar olan sayılarının yanyana yazılıp çarpımı demektir. 5! demek 1'den 5'e kadar sayıların yanyana yazılıp çarpılmasıdır

Private Sub Form_Load()

Dim i, a, sayi As Integer

a = 1

sayi = InputBox("Sayıyı Giriniz:")

For i = 1 To sayi

a = a * i

Next

MsgBox "Girdiğiniz Sayının Faktöriyeli = " & a

End Sub

Faktöriyel Hesabı

Do ...... Loop ÇEVRIM YAPISI

Visual BASIC’ te Do .... Loop sözcüklerini içeren 4 ayrı tür çevrim yapısı mevcuttur

Do ....... While Loop ÇEVRİM YAPISI Do Until ....... Loop ÇEVRİM YAPISI Do ................ Loop While ÇEVRİM

YAPISI Do ................ Loop Until ÇEVRİM YAPISI

1) Do ....... While Loop ÇEVRıM YAPISI

Önce koşul kontrol edilir. Koşul doğru ise (TRUE), a ile gösterilen komutlar grubu icra edilecektir. Başka bir deyişle, Do ... While Loop yapısı, koşul doğru olduğu sürece sonsuz bir çevrim teşkil edecektir.

ÖRNEK: 1)Form üzerine bir komut butonu yerleştiriniz. Komut

butonunu Caption özelliğini TOPLAM yapınız. Komut butonun kod penceresine aşağıdaki kodu giriniz:

Girilen sayıları kendi içinde toplar

Private Sub Command1_Click()

Dim x, z, y as Long

x = -1

z = 0

Do While x < 4

y = InputBox("Bir sayı giriniz...")

z = z + Val(y)

x = x + 1

Loop

MsgBox z, , "TOPLAM"

End Sub

Kullanıcıdan bir isim yazmasını isteyen bir kod örneği. Ad değişkeni “son” olmadığı sürece devam ediyor. Her defasında font boyutu 1 punto artırılıyor.

Private Sub Form_Load()

Dim Ad As String

Dim Boyut As Integer

Boyut = 12

Tekrar = 0

Ad = InputBox("Lütfen adınızı yazınız. Çıkmak için son yazın")

Do While Ad <> "son"

Form1.FontSize = Boyut

                        Print Ad

                        Boyut = Boyut + 1

                        If Boyut = 20 Then

                                   Exit Do

                        End If

                        Ad = InputBox("Lütfen adınızı yazınız. Çıkmak için son yazın")

Loop

End Sub

Do Until - Loop

For...Next dögüsünün gelişmişidir. Bir koşul yanlış olduğu sürece devam eder. Genel yazım şekli aşağıdaki gibidir. Doğrulanınca durur.

 

Do Until Koşul

Bildiri

Loop

Kullanıcının ilk girdiği sayı dahil 5 defa soru girişi yapılacak ve hepsinin toplamı verilecektir.

Private Sub Command1_Click()

x = -5

y = 0

Do Until x > 0

z = InputBox("Bir sayı giriniz...", , "")

y = y + Val(z)

x = x + 1

Loop

MsgBox y, , "TOPLAM"

End Sub

Program çalıştığı anda kullanıcıya adını soran ve yanlış isim girildikçe soruyu tekrarlayan bir kod örneği. 3.denemeden sonra sonra Do..until döngüsünden çıkılıyor.

Private Sub Form_Load()

Dim Ad As String

Dim Tekrar As Integer

Tekrar = 0

Ad = InputBox("Adınızı Giriniz?")

Do Until Ad = "Uğur"

Tekrar = Tekrar + 1

If Tekrar = 3 Then

MsgBox "Üzgünüm. Deneme hakkınız dolmuştur."

Exit Do

End If

MsgBox "Yanlış isim girdiniz. Lütfen tekrar deneyin."

Ad = InputBox("Adınızı Giriniz?")

Loop

End Sub

Finish