VISUAL BASIC 6.0

 

Visual Basic karmaşık mantıklara ve biçimlere sahip, Windows uyumlu uygulamaların tasarımlarını kolaylaştırıcı bir görsel dildir. Bu dilde program geliştirmenin ilk adımı, kullanıcının ekranda görmek istediklerini saptamak ve ekran tasarımını gerçekleştirmektir.  Bu programda her şey nesne olarak tanımlanmıştır (form, yazı kutusu, komut düğmesi v.b.). Nesneler, kendilerine iliştirilmiş olan olayları (farenin tıklanması, farenin çift tıklanması gibi) tanıyabilir ve yazılmış olan komutlara göre tepki verebilir. Olaylar gerçekleştiğinde işlemler yerine getirilir, ve pencereler güncelleştirilir. Sistem daha sonra yeni olayları bekler.

 

TEMEL KAVRAMLAR

Form: Windows pencerelerinin Visual Basic'deki karşılığıdır. Uygulama çalıştırıldığında formlar pencerelere dönüşür. Her uygulama en az bir form içermek zorundadır.

 

Prosedür: Komut cümlelerinden oluşan program parçalarıdır.

 

Modül: Tek bir dosyada toplanan ve programın herhangi bir yerinden çağırılabilen prosedürler ve tanımlamalar topluluğu.

 

Özellik (Property): Nesne karakteristiklerini (boyut, renk, konum, …) ve nesne davranışlarını tanımlayan nitelikler.

 

Olay (Event): Nesnelerin algılayabildiği eylemlerin adıdır.

 

ARAÇ ÇUBUĞU VE KISAYOL TUŞLARI

Şekil-1'de araç çubuğu ve üzerindeki kısayol tuşları görüntülenmektedir.

 


Şekil-1. Araç Çubuğu

 

 

Araç çubuğu üzerindeki kısayol tuşlarının işlevleri soldan sağa aşağıdaki gibidir:

·        Standart EXE Proje Ekleme - File/Add Project (File Menüsünden Add Project seçeneği tıklanır)

·        Form Ekleme - File/New Form

·        Menü Tasarımı - Window/Menu Design - Ctrl+M

·        Proje Aç - File/Open Project

·        Proje Kaydet - File/Save Project

·        Kes - Edit/Cut - Ctrl+X

·        Kopyala - Edit/Copy - Ctrl+C

·        Yapıştır - Edit/Paste - Ctrl+V

·        Bul - Edit/Find - Ctrl+F

·        Geri Al - Edit/Undo - Ctrl+Z

·        Tekrar - Edit/Redo

·        Başlat - Run/Start - F5

·        Ara Ver - Run/Break - Ctrl+Break

·        Sona Erdir - Run/End

·        Proje Gezgini - View/Project Explorer

·        Özellikler Penceresi - View/Properties Window - F4

·        Form Görüntü Penceresi - View/Form Layout Window

·        Nesne Gezgini (tüm nesneleri gösterir) - View/Object Browser

·        Araç Kutusu (kontrol nesnelerini içerir) - View/Toolbox

·        Veri tabanı Bağlantıları - View/Dataview Window

 

Proje ve Form Pencereleri

Tüm Visual Basic bileşenleri bir proje içerisinde bulunur. Proje yaratıldıktan sonra, proje penceresinde, o uygulamada yer alan formlar, modüller ve özel denetçiler listelenir. Listeden istenilen form seçildikten sonra View/Form ile formun kendisi ya da View/Code ile o forma ait kod görüntülenebilir. Formun üzerinde yer alan noktalara grid denir. Bu noktalar form üzerineyerleştirilecek nesnelerin hizalanmasını sağlar.

 

ÖZELLİKLER PENCERESİ

Bir formun konumunu değiştirmek onun özelliğini değiştirmek anlamına gelir. Özellikler penceresi açıldığında Şekil-2'deki gibi görüntülenir. Başlık çubuğu altındaki nesne kutusunda (Object Box) yer alan açıklama nesnenin adını ve ne tip bir nesne olduğunu belirtir. Örneğin Şekil-2'deki "Form1 Form" açıklaması seçili nesnenin bir form olduğunu ve adının Form1 olduğunu göstermektedir. Nesne kutusunu altındaki ayarlar kutusunda (Settings Box) ise pencerede o anda seçilmiş olan ayarın değeri görüntülenir ve değiştirilebilir. Seçeneklerin çoğunluğu kullanıcıya düşen liste olarak sunulur. Bu liste renkler için paleti görüntülerken, pencerenin görünür olma özelliği için ise doğru/yanlış (True/False) olarak sunulur.

Bazı Form Özellik Tanımları

(Name):  İsim

Appearance: Formun düz ya da 3-boyutlu görünmesini sağlar.

BackColor: Artalan rengi

BorderStyle: Kenar çizgisi biçimi

Caption: Form Başlığı

ControlBox: Pencere kontrollarının olup olmayacağını belirler.

Font: Yazı tipini belirler.

Height: Formun yüksekliğini belirtir.

Left: Formun sol koordinatını belirler.

Top: Formun üst koordinatını belirler

Visible: Formu gizlemek ya da gizli formu görüntülemek için kullanılır.

Width: Formun genişliğini belirtir.

 

Şekil-2. "Properties" Özellikler Penceresi

 

Programı Başlatma

Visual Basic programını başlattığınızda ekrana Şekil-3'deki Yeni Proje Penceresi gelir. Eğer Visual basic daha önceden çalışıyor ise aynı pencereyi File/New project seçeneği ile de açabilirsiniz. Bu pencere seçenekleri ile proje tipini belirleyebilirsiniz. Normal proje için Standard.EXE, Internet ile ilgili projeler için Activex.EXE kullanınız.

 


Şekil-3. Yeni Proje Diyalog Penceresi


Şekil-4. Proje Tasarım Penceresi

Proje açıldıktan sonra proje tasarım penceresi Şekil-4'deki gibi ekrana gelir. Bu pencerenin başlığı Project1: Microsoft Visual Basic (Design) olarak görüntülenir. Daha sonra bu program çalıştırıldığında Design-Run olarak değişecektir.

 

Bu yeni proje bir form ile başlar. Genelde bu form programınızın başlangıç sayfası olur. Form penceresi dışında Tasarım Penceresi üzerinde projede yer alan formları gösteren "Project1" adlı proje penceresi, formun ekran üzerindeki boyutunu gösteren "Form Layout" penceresi ile nesne özelliklerini gösteren "Properties" penceresi yer alır. Tasarım penceresinin sol tarafında ise nesne yaratımı için gerekli bir araç çubuğu bulunur.

 

Projeyi Saklama

Projenin saklanması için öncelikle projenin bileşenleri (form, kod modülü, vs.) ayrı ayrı ait oldukları dosyalara saklanmalı, daha sonra projenin kendisi proje dosyası olarak saklanmalıdır.

 


Projeyi saklamak için File/Save Project menü seçeneği ya da araç çubuğu üzerindeki Save Project düğmesi tıklanır. Her proje bileşeni için ardı ardına Şekil-5'deki Yeni Adla Proje Saklama Diyalog kutusu ekrana gelecektir. Bu kutu üzerinde her dosyanın adını ve yerini belirlemeniz gerekmektedir.

Şekil-5. Yeni Adla Proje Saklama Penceresi

 

 

Formları Programlama


Formlar 20'den fazla olaya tepki verebilirler. Bu tepkinin ne olacağını kodlama ile belirtebilirsiniz. Örneğin, kullanıcı form üzerindeki herhangi bir bölgeyi tıkladığında bir mesaj görüntüleyebilirsiniz. Kodlamayı yapabilmek için formu çift tıklamak ya da View/Code komutu kullanmak yeterlidir. Bu komut çalıştırıldığında Şekil-6'daki pencere ekrana gelir. Bu pencerenin üst sağındaki "Object" kısmında formda yer alan tüm nesnelerin listesi, soldaki "Proc" kısmında ise nesnenin tanıyacağı olaylar bulunur.

 

Şekil-6. Form Kod Penceresi

 

Form tıklandığında "Fareyi tıkladınız" mesajını vermek için gerekli kod aşağıdadır:

Sub Form_Click

                        Print "Fareyi tikladiniz."

End Sub


 

Örnek Form Olayları

Activate

Formun etkin pencere olması

Click

Form üzerinde farenin tıklanması

DblClick

Form üzerinde farenin çift tıklanması

Deactivate

Formun edilgen olması

GotFocus

Form denetçilerinin edilgen, formun etkin olması

KeyDown

Odak form üzerinde iken klavye tuşuna basılması

KeyPress

Odak form üzerinde iken klavye tuşuna basılıp bırakılması

KeyUp

Odak form üzerinde iken herhangi bir tuşa basılması yada bırakılması

Load

Form penceresinin açılması

LostFocus

Odağın formdan başka bir nesneye kayması

MouseDown

Farenin bir tuşuna basılması

MouseMove

Farenin hareket ettirilmesi

MouseUp

Farenin basılan tuşunun bırakılması

Unload

Formun kapatılması

 

Örnek Form Yöntemleri

Circle

Form üzerine daire, elips ya da yay çizer

Cls

Form üzerindeki tüm yazı ve resimleri siler

Hide

Formu gizler fakat kapatmaz

Line

Form üzerinde çizgi ya da dikdörtgen çizer

Move

Formu hareket ettirir

Print

O andaki renk ve yazı boyunu kullanarak form üzerine yazı yazar

PrintForm

Formu ekranda göründüğü gibi yazıcıya yollar

Refresh

Formun kendini yeniden çizmesini sağlar

Scale

Formun koordinat sistemlerini tanımlar

SetFocus

Odağın forma kaymasını sağlar

Show

Formun görüntülenmesini sağlar

TextHeight

Yazı boyunu belirler

TextWidth

Yazı uzunluğunu belirler

 


Kullanıcı Etkileşimi

Kullanıcıdan bilgi almak için kontrol nesneleri kullanılır. Bu kontrol nesneleri Şekil-7'de görüntülenmektedir.

Gösterici (Pointer)

Resim Çerçevesi (PictureBox)

Etiket (Label)

Yazı Kutusu (TextBox)

Çerçeve (Frame)

Komut Düğmesi (CommandButton)

İşaret Kutusu (CheckBox)

Seçenek Düğmesi (OptionButton)

Çekme Liste (ComboBox)

Liste (ListBox)

Yatay Kaydırma Çubuğu (HScrollBar)

Düşey Kaydırma Çubuğu (VScrollBar)

Zamanlayıcı (Timer)

Sürücü Listesi (DriverListBox)

Dizin Listesi (DirListBox)

Dosya Listesi (FileListBox)

Şekil (Shape)

Çizgi (Line)

Resim (Image)

Veri Denetçisi (Data)

OLE Denetçisi (OLE)

 

Şekil-7. Kontrol Nesnelerinin Yer Aldığı Araç Çubuğu

 

Bir Nesnenin Taşınması ve Boyutlandırılması

Bir nesnenin taşınma ve boyut değiştirme işlemleri grafik nesnelerinki ile aynıdır. İstenirse birden fazla nesne Ctrl tuşu basılı tutularak seçilir ve grup halinde taşıma ya da boyut değiştirme işlemi gerçekleştirilebilir.

 

Etiket

Kullanıcıya bilgileri ve yazıları görüntülemek için kullanılır, burada bilginin kullanıcı tarafından değiştirilmesi olası değildir.

 

Etiket Ekleme

Yazı kutularının işlevini belirlemek için her yazı kutusu ile birlikte bir adet etiket kutusuna gereksinim vardır.

·        Araç çubuğu üzerinde etiket kutusu düğmesini tıklayınız.

·        Farenin imlecini form üzerine, kutuyu koyacağınız yerin bir köşesine götürünüz.

·        Fareyi tıklayarak parmağınızı bırakmadan kutunun karşı köşesi olacak yere kadar sürükleyiniz, ve fare düğmesini bırakınız.

Etiket kutusunun özellikleri "Properties" penceresinde görüntülenir. Nesnenin adı "Name" ile belirlenir, etiketin ekranda gözükecek yazısı ise "Caption" bölümüne yazılır.

 

Yazı Kutusu

Kullanıcıdan yazılı olarak bilgi almak ve yine bilgileri kullanıcıya göstermek için kullanılır. Yazı kutusunun özellikleri yine "Properties" penceresinden değiştirilir. Yazı kutusuna girilen bilgi sayısal bilgi de olsa karakter dizini olarak kabul edilir. Aritmetik işlem yapılacağı takdirde sayıya çevrilmelidir (Val komutu ile). Yazı kutularının ismi vardır ancak başlık - "Caption" özelliği bulunmaz.

 

Yazı Kutusu Ekleme

·        Araç çubuğu üzerinde yazı kutusu düğmesini tıklayınız.

·        Farenin imlecini form üzerine, kutuyu koyacağınız yerin bir köşesine götürünüz.

·        Fareyi tıklayarak parmağınızı bırakmadan kutunun karşı köşesi olacak yere kadar sürükleyiniz, ve fare düğmesini bırakınız.

 

Komut Düğmesi

Kullanıcının tıklaması ile çeşitli işlevlerin çalıştırmasını sağlayan düğmelerdir. Komut düğmelerinin üzerine komutun işlevini belirten yazılar başlık-Caption özelliği ile iliştirilir. Başlık yazısı düğmenin ortasına yazılır. Başlık düğmenin standart boyundan geniş ise boyutlandırma otomatik olarak yapılmaz. Bunu sizin yapmanız gerekir. Başlık üzerinde bir karakterin altını çizmek için o karakterin önüne & işareti konur, ve o karakter altı çizili olarak yazılır. Böylece komut Alt tuşu ile altı çizili karakterin klavyeden basılması ile de çalıştırılır.

&Son -- Son -- Alt+S ile Son komutu gerçekleşir ve program sona erer

 

Komut Düğmesi Ekleme

·        Araç çubuğu üzerinde komut düğmesi düğmesini tıklayınız.

·        Farenin imlecini form üzerine, düğmeyi koyacağınız yerin bir köşesine götürünüz.

·        Fareyi tıklayarak parmağınızı bırakmadan düğmenin karşı köşesi olacak yere kadar sürükleyiniz, ve fare düğmesini bırakınız.

 

 

PROGRAMLAMA TEMELLERİ

 

Cümleler

Bir cümleyi yazıp Enter tuşuna bastığınızda o komut cümlesi değerlendirilir ve yazım yanlışları saptanır. Büyük küçük harf ayrımı yapılmaz. Komutun ilk harfi otomatikman büyültülür. Komut olmayan açıklama satırları için tek tırnak, Rem ya da Remark kullanılır.

            Rem     Yardım Düğmesi

' Bu düğme tıklanınca çalışır.

            Print "Yardım yok"  'satır arasına da açıklama koyabilirsiniz

 

Değişkenler

Kullanıcıdan alınan bilgiler ve hesaplama sonuçları değişken denilen geçici bölgelerde tutulur. Değişken adları en fazla 255 karakter olabilir. Değişken adı bir alfabe karakteri ile başlamalıdır. Değişkenin özellikleri ise aşağıda verilen listedeki gibi belirlenir:

s -String              :        Karakter dizisi

n - Integer           :        Tamsayı (-32768 +32767)

l - Long               :        Uzun Tamsayı   (yaklaşık +/- 2 milyar)

f - Single              :        Tek Duyarlı Ondalıklı Sayı (floating)(1E-45, 3E38)

d - Double           :        Çift Duyarlı Ondalıklı Sayı (floating)(5E-324 )1.8E308

c - Currency        :        Para değeri ($) (xxxxxxxxxxxxxxx.xxxx)

b - Boolean         :        Doğru/Yanlış (true-false 0/-1)

v- Variant            :        Değişken

d - Date              :        Gün ve saat bilgisi  (1/1/100 den 12/31/9999 a kadar)

 

Değişken Tanımları

Bir formda tanımlanan değişken o formda yaratılacak tüm prosedürlerde kullanılabilir. Bir prosedürde Dim ya da Private ile yerel olarak tanımlanan değişken ise sadece o prosedür için tanımlı kalır. Genel tanımların kısıtlanması kod hatalarının ayıklanması açısından kolaylık getirir. Bu nedenle yalnızca prosedür içinde kullanılacak değişkenler yerel olarak tanımlanmalıdır. Heryerde (formlar arası) kullanılabilecek değişken tanımlaması ise Public ile tanımlanmalıdır.

 

 

Dim      değişkenadı  [As değişkentipi] [, değişkenadı2 [As değişkentipi2]]

Private değişkenadı  [As değişkentipi] [, değişkenadı2 [As değişkentipi2]]

Public   değişkenadı  [As değişkentipi] [, değişkenadı2 [As değişkentipi2]]

           

Buna göre dolar olarak gösterilecek para değişkeni tanımı şu olabilir:

            Dim  cPara  As  Currency

 

Atama ve Özellik Belirleme

Değişkenlere değer ataması için "=" ya da "Let" deyimi kullanılır. Değişkenin adı eşitliğin sağ tarafında, değeri ise sol tarafında olmalıdır.

            Faiz = .6

            Let Faiz = .6

            Yardım.Caption = "&Yardım"   'Yardım düğmesinin başlığını belirler

            Yardım.Left = Yardım.Left-200            ' Yardım düğmesini 200 piksel sola alır

            Yardım.Visible = False             ' Yardım düğmesini gizler

Yardım.TabStop = False                      ' Tab ile bu düğmeye geçilmez

' Alttaki komut yardım düğmesi gizli ise görüntüler, değilse gizler

Yardım.Visible = Not(Yardım.Visible

 

Sayılar ve İşlemler

Tamsayı (Integer) değişkenlere reel sayı atandığında tamsayıya yuvarlanarak atanır. Değişken tipine uymayan bir atama yapılır ise sistem uyarı verir.

            Dim Sayi As Integer

            Dim Yil As String

            Sayi = 50000               ' Yanlış, en fazla 32768.

            Sayi = 32.2                  ' 32 olarak atanır

            Sayi=Val("1994")         ' 1994 değeri atanır

            Yil = Str$(1994)           ' "1994" değeri atanır

 

Aritmetik işlemlerde parantezlerin önceliği vardır. Parantez yok ise yukarıda belirtilen öncelik sıraları uygulanır. Aynı öncelik sırasına sahip olan işlemler soldan sağa doğru gerçekleştirilir.

 

Aritmetik Operatörler ve Öncelik Sırası

1

^

Üs alma

2

-

Negatif sayıları gösterme

3

*

Çarpma

3

/

Bölme

4

\

Tamsayı bölme

5

Mod

Kalanı bulma (5 Mod 2 = 1) (Tamsayı)