Microsoft firması tarafından geliştirilen Visual Basic, atası olan QBASIC derleyicisinin geliştirilmiş ve Windows ortamına uyarlanmış olan sürümü olarak adlandırılabilir. Windows ortamına uyarlandığı için de Nesneye Yönelimli bir dildir. VBX kontrollerini destekleyen ilk dillerden biridir. VBasic'de, 1.0 sürümünden 6.0 sürümüne kadar bir çok yenilik ve değişiklik olmuştur. Bunlardan biri de, arayüzünün güçlü ve etkili bir görünüm kazanmasıdır. Visual Basic, devamlı geliştiği bu süre sonunda yüksek hızlı uygulamalar, OLE serverlar, ActiveX kontrolleri ve daha bir çok şey geliştirilebilecek hale gelmiştir.


Microsoft Windows için program geliştiren programcıların yüzde yirmibeşi Visual Basic'i tercih etmektedirler. Visual Basic'i en popüler programlama dillerinden biri yapan en önemli nedenlerden biri de büyük olasılıkla kolay olmasıdır. Visual Basic de program yazmak için çok fazla teknik bilgiye sahip olmak gerekmez. Sadece kontrolleri form üzerine yerleştirmek ve kodu yazmak yeterli. Kısaca Visual Basic, programcıyı, programın kullanıcıya yansıyan şekli için kod yazmak zorunda bırakmayan bir dildir.


Zamanla Microsoft dışındaki bazı şirketler tarafından benzer programlama dilleri geliştirildi. Muhtemelen bunların en popüleri Borland Delphi'dir.


STRING İŞLEMLERİ


StrComp: String Karsilastirma


StrComp (String1, String2, [Sart])


String1 : Karsilastirilacak ilk String
String2 : Karsilastirilacak ikinci String Sart : 0 ise büyük harf kücük harf ayrimi yapar 1 ise yapmaz


Geri Dönen deger 0 ise stringler esittir. Negatif ise String2 Pozitif ise String1 büyüktür. Büyüklük alfabetik siraya göre belirlenir.


StrConv: Stringi Verilen Moda cevirir.


StrConv(String,Mod)


String : cevirilecek metin
Mod : vbLowerCase = Kücük harfe cevrilir
vbUpperCase = Büyük harfe cevrilir
vbProperCase = Ilk harf büyük digerleri kücük
VbFromUnicode = Unicode'dan cevrilir
vbUnicode = Unicode'a cevrilir
vbHiragana = Hiragana
vbKatakana = Katakana
vbNarrow = Dar
vbWide = Genis




Option Compare Binary: General Declaration kismina yazilirsa stringler büyük-kücük ayrimi yapilarak karsilastirilir.


Option Compare Text: General Declaration kismina yazilirsa stringler büyük-kücük ayrimi yapilmadan karsilastirilir.


Ucase(String): Girilen stringi büyük harfe cevirir


Ucase(araba) 'dönen deger ARABA


LCase(String): Girilen stringi kücük harfe cevirir


LCase(ARABA) 'dönen deger araba


LTrim(String): String'in solundaki bosluklari kaldirir


LTrim(" Kalem ") 'dönen deger "Kalem "


RTrim(String): String'in sagindaki bosluklari kaldirir


RTrim(" Kalem ") 'dönen deger " Kalem"


Trim(String): String'in iki tarafindaki bosluklari kaldirir


Trim(" Kalem ") 'dönen deger "Kalem"


Len(String): String'in karakter sayisini verir. Bosluklar dahil


Len("Bilgisayar") 'dönen deger 10


Right(String,x): String'in sag tarafindan x sayisi kadar karakter verir


Right("Bilgisayar",5) 'dönen deger "sayar"


Left(String,x): String'in sol tarafindan x sayisi kadar karakter verir


Left("Bilgisayar",5) 'dönen deger "Bilgi"


Mid(String, bas, [uzunluk]): String'in bastan uzunluk kadar karakteri verir. uzunluk verilmesse metnin sonuna kadar.


Mid("Bilgisayar",4,4) ' dönen deger "gisa"
Mid("Bilgisayar",4) ' dönen deger "gisayar"


Instr([bas],String,Aranan,Ayrim): String'in icinde verilen karakteri arar. Bulunursa bastan kacinci karakter oldugu geri döner.


Dim ad as String
ad = "Bilgisayar"
y = Instr(ad,"g") ' dönen deger 4


String(x,karakter): Verilen kod dan x sayisi kadar üretir.


String(5,x) 'dönen deger "xxxxx"


Space(x): Verilen degerde bosluk olusturur.


Space(5)


RSet: RSet komutu ile yapilan atama sagdan yapilir


x = "Bilgisayar"
RSet x = "Kalem" ' dönen deger x = " Kalem"


Asc(Harf): Verilen Harfin ascii kodunu geri verir.


Chr(ascii): Verilen ascii kodunun karakter karsiligini verir


Str(sayi): Verilen sayiyi stringe cevirir


Val(String): Verilen string'i sayiya cevirir


Hex(sayi): Verilen dezimal sayiyi hexadezimal sayiya cevirir.


Oct(sayi): Verilen dezimal sayiyi Octal sayiya cevirir


Like Operatörü: String karsilastirma. Mesela bir kelimenin bir string icinde olup olmadigini bulmak.


Dim Test1
Test1 = "aBBBa" Like "a*a" ' dönen deger True.
Test1 = "F" Like "[A-Z]" ' True.
Test1 = "F" Like "[!A-Z]" ' False.
Test1 = "a2a" Like "a#a" ' True.
Test1 = "aM5b" Like "a[L-P]#[!c-e]" ' True.
Test1 = "BAT123khg" Like "B?T*" ' True.
Test1 = "CAT123khg" Like "B?T*" ' False.


OVAL FORM OLUŞTURMAK


Bu kod sayesinde formumuzu oval bir sekilde olusturabiliriz.


Option Explicit


Private Declare Function CreateEllipticRgn Lib "gdi32" _
(ByVal X1 As Long, ByVal Y1 As Long, ByVal X2 As _
Long, ByVal Y2 As Long) As Long


Private Declare Function SetWindowRgn Lib "user32" (ByVal _
hwnd As Long, ByVal hRgn As Long, ByVal bRedraw _
As Long) As Long


Private Declare Function ReleaseCapture Lib "user32" () _
As Long


Private Declare Function SendMessage Lib "user32"Alias _
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As _
Long, ByVal wParam As Long, lParam As Any) As Long


Private Const HTCAPTION = 2
Private Const WM_NCLBUTTONDOWN = &HA1
Private Sub Form_Load()
Me.Picture = LoadPicture(App.Path & "\Back.gif")
Call CreateReg
End Sub


Private Sub Command1_Click()
Unload Me
End Sub


Private Sub Form_MouseDown(Button As Integer, Shift As Integer, _
x As Single, y As Single)


If y / Screen.TwipsPerPixelY < 25 Then
Call ReleaseCapture
Call SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&)
End If
End Sub


Private Sub CreateReg()
Dim x&, y&, dx&, dy&, Result&


With Me
dx = .Width / Screen.TwipsPerPixelX
dy = .Height / Screen.TwipsPerPixelY
Result = CreateEllipticRgn(y + 1, x + 1, dx - 1, dy - 1)
Call SetWindowRgn(.hwnd, Result, 1&)
End With
End Sub