Site Renkleri

Visual Basic Dersleri

Değişkenler



*

Değişkenler içlerinde veri saklayan programlama arçlarıdır. Bir programı geliştirirken programcı iki türlü veri kullanır bunlar karakter dizileri ve sayısal verilerdir. Bu da bir programlama dilinde verileri depolayan araçları ikiye ayırmayı zorunlu kılmıştır. Diğer programlama dillerinde olduğu gibi Visual Basic'te de veri depolayan araçlar yani değişkenler ikiye ayrılırlar. Bunlar : Karakter dizileri ve sayısal değişkenlerdir. Değişkenlerle ilgili daha ayrıntılı bilgi için aşağıdaki tabloyu inceleyiniz.

Karakter Dizileri

String Karakter Dizisi n Byte
Sayısal Değişkenler

Byte 0-255 arası tam sayı 1 Byte
Integer Kısa tam sayı 2 Byte
Long Uzun tam sayı 4 Byte
Single Kısa rasyonel sayı 4 Byte
Double Uzun rasyonel sayı 8 Byte
Currency 19 haneli rasyonel sayı 8 Byte
Diğer

Boolean True/False mantıksal tip 1 Byte
Variant Her türlü veriyi depolayan değişken tipi 8 Byte

Değişken Tanımlama

Visual Basic'te herhangi bir olay veya alt programda geçerli olacak bir değişkeni tanımlamaya gerek yoktur. Kullanılan değişken olay veya alt program çalışmaya başladığında otomatik olarak Visual Basic tarafından tanımlanır. Bu yöntem ile program geliştirmek kolay olmasının yanısıra büyük uygulamalarda yetersiz kalmaktadır. Bu yöntemin bir dezavantajı ise kod yazımı sırasında programcının yapacağı değişkenlere bağlı yazım (syntax) hatalarını derleyicinin farkedememesidir. Visual Basic Code Window içindeyken en üste Option Explicit yazıldığında Visual Basic derleyicisi kullanılan bütün değişkenlerin tanımlanmasını şart kılar. Visual Basic'te üç türlü değişken tanımlama yöntemi vardır bunlar;

Dim : Kullanıldığı ortamda geçerliliğini sürdüren değişkenler tanımlamak için kullanılır. Değişkenler Dim ile bir olayın içinde tanımlandığında sadece o olay içinde geçerli olurlar. Formun veya Modülün General Declarations bölümünde tanımlanan değişkenler tanımlandıkları form veya modülün içindeki bütün olay, alt program ve fonksiyonlarda geçerli olurlar. Aşağıdaki örnekte x değişkeni Dim deyimi ile tanımlanan bir Integer'dır. Kullanıcı Command1 isimli düğmeye bastığında doğar, sadece Command1_Click() olayı içinde geçerlidir ve olay bittiğinde ölür.

Private Sub Command1_Click()

Dim x as Integer

x=3

End Sub

Static : Kullanıldığı ortamda geçerliliğini sürdüren ve alt programın içinde olduğu form veya modül bellekten silinene kadar yaşamını sürdüren değişkenler tanımlamak için kullanılır. Aşağıdaki örnekte x değişkeni Static deyimi ile tanımlanan bir Integer'dır. Kullanıcı Command1 isimli düğmeye ilk basışında doğar, olay bitti ğinde uyur ve içindeki değeri saklar, sadece Command1_Click() olayı içinde geçerlidir ve Command1 isimli CommandButton'ın üstünde olduğu form bellekten silindiğinde ölür. Aşağıdaki örnekte düğmeye üç kez basıldığında Label1 nesnesi ekranda 9 gösterecektir.

Private Sub Command1_Click()

Static x as Integer

x=x+3

Label1.Caption=x

End Sub

Redim : Esnek boyutlu dizi değişkenler tanımlamak veya tanımlanmış bir dizi değişkenin boyutlarını değiştirmek için kullanılır. Ayrıntılı bilgi sonraki bölümlerde verilecektir.

Global : Sadece Modüllerin General Declarations bölümünde kullanılabilir. Projenin heryerinde geçerli olan, program çalıştığında doğan ve program bellekten silindiğinde ölen değişkenler tanımlamak için kullanılır.

Not: Global tanımlanmış x değişkeniniz varsa ve herhangi bir olayın, alt programın veya fonksiyonun içinde de bir x değişkeni tanımlarsanız. O olayın, alt programın ve fonksiyonun içinden global olan x değişkenine erişemezsiniz.

Değişken dönüşüm fonksiyonları

CStr() : Herhangi bir veri tipini String veri tipine dönüştürmek için kullanılır.

CByte() : Herhangi bir veri tipini Byte veri tipine dönüştürmek için kullanılır.

CInt() : Herhangi bir veri tipini Integer veri tipine dönüştürmek için kullanılır.

CLng() : Herhangi bir veri tipini Long veri tipine dönüştürmek için kullanılır.

CSng() : Herhangi bir veri tipini Single veri tipine dönüştürmek için kullanılır.

CDbl() : Herhangi bir veri tipini Double veri tipine dönüştürmek için kullanılır.

Str() : Herhangi bir sayı veri tipini String veri tipine dönüştürmek için kullanılır.

Int() : Herhangi bir sayı veri tipini tam sayıya dönüştürmek için kullanılır.

Val() : Herhangi bir String veri tipini sayıya dönüştürmek için kullanılır.

String İşleme Fonksiyonları

Trim() : Bir String ifadenin başında ve sonunda bulunan boşlukları siler.

LTrim() : Bir String ifadenin başında bulunan boşlukları siler.

RTrim() : Bir String ifadenin sonunda bulunan boşlukları siler.

Mid(String,start,lenght) : Bir String ifadenin bir bölümünü kesmek için kullanılır. Örneğin Mid("ABCDEF",3,2)="CD"

Right(String,Lenght) : Bir String ifadenin sondan istenilen sayıda karakterinin kesilmesi anlamına gelir. Örneğin Right("ABCDEF",3)="DEF"

Left(String,Lenght) : Bir String ifadenin baştan istenilen sayıda karakterinin kesilmesi anlamına gelir. Örneğin Left("ABCDEF",3)="ABC"

Yeni Değişken Türü Oluşturma (Type)

Mevcut kullanılan değişken türleri yetersiz kaldığında veya yapılan çalışmayı sadeleştirmek istendiğinde yeni bir değişken türü tanımanır. Yeni değişken türü bir veya birden fazla mevcut değişken türlerinde tanımlanmış alt değişkenlerden oluşur. Bu işlemi gerçekleştirebilmek için aşağıdaki yazım kuralına uygun Type komutu kullanılır. Type komutu sadece modül içinde kullanılabilir. Form içinde kullanılamaz.

Type [Yeni Değişken Türü Adı]

AltDeğişken1 As MevcutTür

AltDeğişken2 As MevcutTür

.

.

AltDeğişken3 As MevcutTür

End Type

Yeni oluşturulmuş bir değişken türü programın her yerinde diğer değişkenlerden farksız olarak kullanılabilirler.

Not: Rasgele erişimli dosyalarda kullanılacak olan bir değişken türü içinde tanımlanan String türünde alt değişkenlerin uzunlukları aşağıdaki örnek koddaki belirtilmelidir.

Type Ogrenci

Adı As String * 25

Soyadı As String * 25

Yaşı As Integer

AnneAdı As String *25

BabaAdı As String * 25

End Type

* Operatörler ve Bağlaçlar

= Atama Operatörü x=3
+ Toplama Operatörü x=y+5
- Çıkarma Operatörü x=y-3
* Çarpma Operatörü x=y*3
/ Bölme Operatörü x=y/2
^ Üs Operatörü x=y^2
> Mantıksal Büyüktür Operatörü x>5
< Mantıksal Küçüktür Operatörü x<3
<> Mantıksal Farklı Operatörü x<>6
Not Mantıksal Değil Bağlacı Not x>5
And Mantıksal VE Bağlacı x>3 And y<>2
Or Mantıksal VEYA Bağlacı x=5 OR y<9

* If-Then-Else

Nesne temelli programlamada program akışı sadece olaylar ile yapılmaz. Olaylar içinde yazılan kodun mantık çerçevesinde yönlendirilmesi gereklidir. Visual Basic'te büyük çoğunlukla yönlendirme işlemi if blokları ile gerçekleştirilir. If bloklarının yazım (syntax) kuralı aşağıdadır.

If Şart1 Then 'Blok Başlangıcı

............. 'Şart1 doğru ise yapılacak işlem

ElseIf Şart2 Then

................ 'Şart1 Yanlış ve Şart2 doğruysa yapılacak işlem

ElseIf Şart3 Then

............... 'Şart1 ve Şart2 Yanlış Şart3 doğruysa yapılacak işlem

ElseIf Şart4 Then

...............

ElseIf Şart(n) Then

............... 'Bütün Şartlar Yanlış ve Şart(n) doğruysa yapılacak işlem

Else

............... 'Bütün Şartlar Yenlış ise yapılacak işlem

End If 'Blok Sonu

If bloklarını kullanırken programcının yukarıdaki gibi Else veya ElseIf alt If bloklarını kullanma zorunluluğu yoktur. Aşağıdaki örnekleri iyice inceleyiniz.

If x=8 Then

................ ' x=8 ise

End If

'--------------------------------------------------------------

If x=8 Then

................ 'x=8 ise

ElseIf x=9 Then

................ 'x=8 değil ve x=9 ise

End If

'--------------------------------------------------------------

If x=8 Then

................ 'x=8 ise

Else

................ 'x=8 değilse

End If

'--------------------------------------------------------------

If x=8 Then

................ 'x=8 ise

ElseIf x=9 Then

................ 'x=8 değil ve x=9 ise

Else

................ ' x=8 değilse ve x=9 değilse

End If

* Select Case

"Select case" komutu ikiden fazla durumun söz konusu olduğu şartlarda program akışını yönlendirmek için kullanılan yönlendirme komutudur. "Select Case" komutu durum değişkenine göre hareket eder. Aşağıda "Select Case" komutunun yazım kuralı açıklanmıştır.

Select Case [Durum Değişkeni]

Case [Durum1]

............... ' Durum1 oluşursa çalışacak kod

Case [Durum2],[Durum3]

............... ' Durum2 veya Durum3n oluşursa çalışacak kod

Case Is > [Durum4]

............... ' Durum değişkeni Durum4'den büyükse

' çalışacak kod

Case Is < [Durum5]

............... ' Durum değişkeni Durum5'den küçükse

' çalışacak kod

Case Else

............... ' Yukarıdaki durumların hiçbiri gerçekleşmiyorsa

' çalışacak kod

End Select

Web Tasarımı | Site Tasarımı | Bilgisayar Dersleri | Hosting | Domain