Destek ve ders arşivi sitesi...

DESTEK VE DERS ARŞİVİ SİTESİ

----> Visual Basic 6

VİSUAL BASİC NEDİR?

     Visual Basic, Microsoft firmasının ürettiği bir program tasarım programıdır. Kendine ait programlama dili ile kendinizce programlar tasarlayabilir, hatta onları piyasaya bile sürebilirsiniz. Bu programın kendine ait Visual Basic (VB) programlama dili vardır. Bu programlama dili çok basittir. Böyle söylememin sebebi ise; her yerde kaynak derslerinin bulunmasıdır. Mesela programın temellerini attınız. Sonra program hakkında bir şey öğrenmek istiyorsunuz. İnternette arama yaptığınızda bir sürü kaynak çıkar karşınıza. İşte bu nedenle zengin kaynaklı bir programlama dilidir. Peki bu programla ne tür şeyler yapılır, ne işe yarar? Bu program ile içinde işlemler geçen her türlü program yapabilirsiniz. İşlemler deyince hemen yanlış anlamayın. Bu programdaki işlemler, biraz farklı. Yani bununla sadece hesap makinesi veya not hesaplama gibi şeyler değil de, sözlük programı gibi şeyler de yapılabilir. Tabi ama bunları kendi programlama dilini öğrenerek yapabilirsiniz. Ayrıca dediğim gibi programı öğrenmekte hiç zorluk çekmezsiniz. Çünkü internette ayrıntılarıyla anlatımla var.
 

VİSUAL BASİC NERELERDE KULLANILIR?

     Visual Basic, bir çok farklı alanda kullanılabilir. Mesela bir not defteri belgesinde. Bunları yapabilmek için öncelikle Visual Basic programlarından herhangi bir sürümünü lisanslı olarak satın almanız gerekir. Bunu yaptıktan sonra ise programı yazıp ve patentini alıp, satışa sunabilirsiniz. Program yapmak için elinizde sadece program ve bilgi olması yeterli olmaz. Bu programın aynı zamanda diğer programlara benzememesi açısından kontrol edilmesi gereklidir. Sonra bir karışıklık olmasın diye yani.() Herneyse. Programı satışa sunduktan sonra bunun iyi bir satış oranının olması gerekmektedir. Ayrıca bu satış oranını, programın özelliklerini çok yaparak sağlayabilirsiniz. Mesela bir antivirüs programı yaptınız. Bu programınsadece tarama ve silme özelliği yanında diğer ek araçları olursa, bu kullanıcının ilgisini çekebilir ve böylelikle satış oranınız artmış olur. Kullanıcının ilgisini çekecek arayüz de çok önemlidir. Aslında bazı grafiksel arayüzler, bilgisayarı çok kastığı için pek tercih edilmez. O yüzden yüksel görsellikli bir tasarım değil, orta görsellikli bir tasarım kullanmanız, sizin için daha iyi olur. Visual Basic'ta genellikle kodlarla değil de programla çalışılır. Kodlar bazı ekstra özelliklerde, işlemlerde ve bağlama özelliklerinde kullanılır. Bu nedenle Visual Basic programınızın iyi olması da programın kalite olmasına yarar sağlar. Çünkü ileriki sürümlerinde illaki yeni özellikler olacak. Yani bu özellik ve güncellemelere göre hareket ederseniz, daha kaliteli bir program elde etmiş olursunuz.

VİSUAL BASİC KODLAMA DİLİ

     Visual Basic programının kendine ait bir kodlama dili vardır. Bu dil ile programda olmayan şeyleri yapmaya ve objeler arası etkileşimi sağlamda görevlidir. Bu dil olmadan Visual Basic'ta bir program yapamazsınız. Aslında yapsanız da o programın görselliği dışında başka bir işlemi olmaz. Bu işlmeleri yapabilmek için bu kodlama dili kullanılır. Şimdi gelin en küçük programımızı tanıyalım:

Private Sub form_load()

End Sub

     Bu programın hiçbir işlevi yoktur. Ama bu iki satırın tam ortasına işlemleri yazarsanız bir işlevi olur. Bu kod satırını zaten formun herhangi bir yerine tıklayınca görürsünüz. Bunun anlamı; "Form açılınca şu işlemi yap."dır. Bu kodlama diline bir komu vereceksek, her zaman Private veya Public komutları ile başlanır. Genel olarak "Private" kullanılsa da, bazen "Public" komutunu kullanmaya da ihtiyaç vardır.

     Bu komuttan sonra gördüğünüz gibi bir de "Sub" denen bir şey var. Kodu Sub ile End Sub arasına yazmalısınız. Yoksa kodunuz çalışmayabilir. Bu anlattıklarımın dışında bir tek; "form_load()" kaldı. Burda ise bir nesnenin ne yapılınca hangi işlemi yapması gerektiğinden söz edilir. Mesela bu form yerine bir buton olsun. Şimdi bir de öyle bir örnek vereyim:

Private Sub Command1_Click()
MsgBox ("Bu bir programdır. Programa hoş geldiniz!!!")
End Sub

     Burda ise butonun adı Visual Basic'da command olarak geçtiği için öyle yazılır. Burda anlatılmak istenen şudur: "Buton1'e tıklandığında ekrana bir mesaj kutusu getir.". Bunu yapmak için ilk olarak butonumuzun adını belirttik: "Command1". Sonra ise butonumuza neyin uygulanacağını söyledik: "Click(Tıklandığında)". Sonra ise yapılacak işlemi belirttik: "MsgBox'taki yazıyı göster.". İşte sıralama bu şekilde olmalıdır. Yani isim, hareket ve işlem sıralaması.

     Hazır buraya gelmişken MsgBox'dan da söz edelim. Bu komut; Visual Basic'ta herhangi bir hareket meydana getirldirildiğinde, bu hareket sonrasında ekrana gelen kutudur. Bu kutuda ne yazacağını ise ilk olarak iki parantez arasına iki tırnak işareti koyarak sonra ise içine mesajınızı yazarak yapabilirsiniz.
 

VİSUAL BASİC'DAKİ HAZIR NESNELER

     Visual Basic'ta bazı hazır nesneler verdır. Bunlar programınızın görsel özelliklerini kolayca oluşturmasını sağlar. Bu nesnelerle orta ile düşük arası bir görsellikte olan temalar yapabilirsiniz. Ama bu temalar önceden de bahsettiğim gibi bilgisayarınızı yormaz.

     Şimdi size bu nesneleri açıklayacağım:

     PictureBox: Bu bir resim kutusu eklemek için kulllanılan araçtır. Bu araç ile bir resim kutusu oluşturup, içerisine resim açma gibi bir komut verebilirsiniz.

     Label: Bu programınıza yazı eklemeniz için kullanılan bir araçtır. Visual Basic'ta kafanıza göre herhangi bir yere yazı yazamazsınız. Bunu yapmanız ancak bu araçla olur. Bu araç sayesinde programınızın herhangi bir yerine sınırsız satırda yazı yazabilirsiniz.

     TextBox: Mesela bir şifre yazacaksınız. Bu şifreleri, kullanıcı adlarını nerelere yazmanız gerekir? Tabi ki de TextBox'a... Bu araç sayesinde bir yazı kutusu ekleyebilir ve ona programdayken herhangi bir değer girebilirsiniz. Daha çok internette parola ve kullanıcı adı yazarken veya sanal hesap makinelerinde sayı değerleri girerken bu araçla karşılaşabilirsiniz.

     Frame: Bu ise bir işlem grubunun fark edilmesini sağlayan bir araçtır. Bununla, mesela bir yazı kutusu bir de buton olsun. Butona tıklandığında o yazı kutusundaki yazı değişsin. İşte bu iki araç arasındaki etkileşimi göstermek için bunlar bir gruba alınır. Bu işlemi bu araçla yapabilirsiniz.

     CommandButton: Bu en basit tanımıyla; projenize buton eklemek için kullanılan araçtır.

     CheckBox: Mesela bir ayar yapacaksınız. Bu ayar için bir CheckBox yaptınız. Bu CheckBox, işaretliyken sayılar kalın, değilken ince olacak. İşte bu gibi durumlarda genelllikle bir ayarı değiştirmek için kullanılan ve geri dönüşü mümkün ayarlamalar yapılabilen bir araçtır.

     OptionButton: Üç şık arasında zorunlu seçim yapacaksınız. Bu zorunla seçim için bir tıklandığında geri dönüşü olunmayan veya bir tıklandığında yanlızca o şıkların dışında boş bırakılma şansı olunmayan işlemler için kullanılan araçtır.

     ComboBox: Mesela elinizde bir buton olsun. Bu butona tıkladığınızda TextBox gibi görünen, fakat yanındaki aşağı ok işaretinden hiç de öyle görünmeyen bir araçtaki değer değişsin ve eski değer listenin bir altında kalsın. İşte bu gibi durumlarda kullanılan bir Visual Basic aracıdır.

     ListBox: Bir değer girildiğinde, bu değeri kutu içerisinde listelemeye yarayan araçtır.

     HScrollBar: Projenizin sığmayan kısmını yana doğru kaydırdınız. Bunun gözükmesi için bu yatay kaydırma çubuğu kullanılır.

     VScrollBar: Projenizin sığmayan kısmını aşağı doğru hareket ettirdiniz. Bunun gözükmesi için bu dikey kaydırma çubuğu kullanılır.

     Timer: Bu ise genel olarak bir zamanlayıcıdır. Mesela 6 saniye sonra programın kapatılması isteniyorsa, bu gibi durumlarda bu araç kullanılır.

     DirveListBox: Bu araç ise sürücülerin listesinin görülmesi içi kullanılır.

     DirListBox: Bu araç ile mesela bir klasör içindeki dosyayı açacaksınız. Bu dosya için klasör yolunu bu araçla izleyebilirsiniz. Yani bu araç ile klasör içerisindeki dosya bulma işlemlerini yapabilirsiniz.

     FileListBox: Belirtilen bir klasördeki dosyaların isimlerini otomatik olarak listeleyen bir araçtır.

     Shape: Visual Basic programınıza kolayca Paint programında olduğu gibi, şekiller eklemeye yarayan bir araçtır.

     Line: Projenize kolay bir şekilde çizgi eklemeye yararyan bir araçtır.

     Image: Bu araçla projenize kolayca resim ekleyebilirsiniz. Bu aracı sakın PictureBox ile karıştırmayınız.

     OLE: Bu ise projenize kolayca bir uygulama eklemeye yarayan araçtır.

VİSUAL BASİC'DA NESNE EYLEMLERİ

     Visual Basic'ta, bir nesneye bir eylem yapıldığında ne yapılacağı hakkında bilgi veren bir kod yazmanız gerekir. Eğer bunu yapmazsanız, mesela bir butona tıkladığınızda, o buton ile hiç bir işlem gerçekleşmez. Bundan dolayı bu butona bir özellik vermemiz gerekir. Şimdi biz sadece CommandButton ve TextBox üzerinde duralım.

     İlk olarak Visual Basic 6 programımızı açalım. Sonra istediğiniz yere bir CommandButton ve bir TextBox koyun. Daha sonra butona 2 kez tıklayın ve karşınıza şu kod gelecektir:

Private Sub Command1_Click()

End Sub

     Burada, daha önce gördüğümüz gibi; "Butona tıklandığında..." anlamını görüyoruz. Click yerine başka bir şey yazmayı deneyelim. Mesela "LostFocus" yazalım. Bunu yazdığımızda şunun gibi bir anlam oluşacak: "Sinyal kaybedildiğinde...". Bunun anlamı: "Buton ile etkileşimden ne zaman ayrıldığında bir hareket yap." gibi bir şey olur. 

     Programı açtığınızda butonun etrafında düzenli bir şekilde görünen noktalar görülür. Bunun anlamı butonla etkileşim var demektir. Ama TextBox'a tıkladığınızda o noktalar gider. İşte şimdi anlatmak istediğimi anlamış olmanız lazım. Yani o noktalar gidince butonla etkileşim bitmiş ve bizim verdiğimiz hareket başlamış demektir. Şimdi şu verdiğim kodu, tüm kodları silerek yapıştırınız:

Private Sub Command1_LostFocus()
Text1.Text = "Merhaba"
End Sub

     Şimdi projeyi çalıştırın. Projeyi çalıştırdığınızda TextBox'taki yazı "Text1" olacaktır. Şimdi TextBox'a tıklayın ve yazıda "merhaba" yazdığını göreceksiniz. İşte bunun anlamı, butonla etkileşim bittiği anda, bizim verdiğimiz hareketin hayata geçirilmesidir.

     LostFocus yazısını tekrar Click ile değiştirin ve bu sefer projeyi açıp butona tıkladığınızda yazının değiştiğini göreceksiniz. İşte burdaki esas mesele oraya yazılan komutun ne olmasıdır.

     Hazır görmüşken bazı küçük şeylere de değinelim. Command1 ile ilgili olan her şey onun içine yazılır. Yani buradan çıkaracağımız sonuç: "Bir nesnenin içine, o nesne ile ilgili olan komutlar yazılır.". Bu koddan anlaşılacak sonuç: "Butondan sinyal kesildiğinde, TextBox'taki yazı merhabaya dönüşsün.".

     Buradaki CommandButton ile ilgili olan şey; TextBox'tur. TextBox kodalamada; Text1, Text2... şeklinde isimlendirilir. İsterseniz bunların isimlerini kolayca değiştirebilirsiniz. Text1 yazdıktan sonra nokta konur ve buna uygulanacak fonksiyon yazılır. Zaten nokta koyduktan sonra bu Text1'e uygulanabilecek fonksiyonlar küçük bir menüde sıralanır. Noktadan sonraki Text ise, Text1'de yazacak olan yazıyı belirtir. Daha sonra eşittir işareti koyulur ve iki tırnak arasına yazacak olan yazı belirtilir.

VİSUAL BASİC'DA ÇOKLU FORMLAR ARASI GEÇİŞ

     Visual Basic'ta ilerde çok kullanacağınız bir özellik vardır. Benim deyimimle çoklu formlar arası geçiş adıyla tanınan bu özellik, formların birbiriyle etkileşimini sağlar. Mesela elinizde 2 tane formunuz var. Bu formlardan birini ayarlar, birini de ana form yaptınız. Ayarlar formundaki bir hereket, ana formu etkileyecek olsun. İşte bu durumlarda bu özellik kullanılır.

     Şimdi iki tane boş form yapın. Bunu nasıl yapacağım diyorsanız; ilk olarak sağ üstteki, üzerinde project yazan pencereyi bulun. Sonra o pencerenin altındaki formlar anlamına gelen, "Forms" yazan ve yanında klasör işareti olan yazıya sağ tıklayıp, "Add" yazan yerin üzerine gelin ve sonra "Form" yazısına tıklayın. Bu iki formun adları zaten doğal olarak "Form1" ve "Form2" olacaktır. İlk olarak Form1'e iki kez tıklayın ve boş forma bir tane buton ekleyin. Sonra butona çift tıklayarak kod bölümüne geçin. Daha sonra ise oradaki her şeyi silip, şu kodu yapıştırın:

Private Sub Command1_Click()
Form2.Show
End Sub

    
Şimdi size ne olduğunu açıklayacağım. Ama önce kod bölümünden çıkın ve projeyi çalıştırın. Sonra butona tıklayın ve karşınıza "Form2" gelecektir. Şimdi buradaki kodda zaten "Sub" ve "Command1_Click()"in ne anlama geldiğini biliyorsunuz. Burada değineceğimiz nokta onların arasındaki kod. Bu kod, butona tıklanınca "Form2"yi göster komutunu verir. Buradaki ilk yazdığımız "Form2", bu butonun hangi formu etkileyeceğini gösterir. Aslında bunu bir önceki yazıda görmüştük. Noktadan sonraki fonksiyon ise, bize "Göster" komutunu vermemizi sağlar. Yani formdan sonra nokta koyularak bu ifade yazılır. Saklamak istiyorsak ise "hide" yazılır. Ama bu noktada dikkat edin. Çünkü "hide" komutu bazen programdan çıkarken bazı sorunlara yol açabiliyor. Mesela bir butondan değil de sağ üstteki Windows'un çıkma işaretinden çıkılırsa, programı belki görmeyebilirsiniz. Fakat görev yöneticisini açtığınızda program karşınıza çıkar. İşte bu gibi durumlarda butona sadece "End" komutunu vermeniz yeterlidir. Bu komut tüm formları kapatarak güvenli bir çıkış sağlar.

VİSUAL BASİC İŞLEMLERİNDE DEĞER ÇAĞIRMA

     Visual Basic kodlama dilinde, programların asıl amacını belirleyen işlemler vardır. Bu işlemler, yapacağınız programdaki herhangi bir nesnenin ne görev yapacağını belirler. Şimdi hemen yeni bir belge açın ve forma iki TextBox ve bir CommandButton ekleyin. Sonra butona 2 kez tıklayın ve kod penceresini görüntüleyin. Şimdi burada yeni bir kavram öğreneceğiz: "Dim ... As Long". Burda üç nokta bıraktığım yere, nesnenin işlemdeki ismini yazacağız. Şimdi bu kodu kod bölümüne yapıştırın:

Private Sub Command1_Click()
Dim Deger1 As Long
Dim Deger2 As Long

Deger1 = Val(Text1)
Deger2 = Val(Text2)

Text2 = Val(Deger1 + 1)
End Sub

     Şimdi burda ilk olarak "Deger1" ve "Deger2" isimlerini tanımladık. Hemen altında ise bunların hangi nesnelerle ilgili olduklarını belirttik. Ancak burada "Val" diye bir şey kullanıp, nesne adını parantez içine yazdık. Buradaki "Val" ifadesi, isimler neye eşit oluyorsa, bunların eşit olduğu nesne veya işlmeleri, tam manasıyla tanımlamak için kullanılan bir komuttur. Bunları tanımladıktan sonra bunların işimize yarayacağı yere geldik. Yani esas işlemin bulunduğu yere. Burada ilk olarak nesnede ne olacağına kara vereceğiz. "Text2" nesnemiz, "Text1" nesnesine yazılacak değer ile 1 sayısının toplamına eşit olacakmış. Burada yine dikkat edilmesi gereken şey ise "Val" kullanımıdır. Ayrıca bir nokta daha var. Burada tanımladığımız "Deger1" ve "Deger2" ifadeleri, burada tanımlanacak olarak değil, işlem olarak kullanılır. Yani bu tanımlanan ifadeler bize işlemlerde işimize yarar. Fark ederseniz eşit olan şeye "Deger2" değil, "Text2" dedik. Yani buarada tanımlanan ifadeyi değil, esas nesneyi ele aldık. 

     Şimdi buradaki programı çalıştıralım ve Text1 yazısını silip, orata istediğiniz bir sayı yazın. Daha sonra butona tıkladığınızda ise, Text2'de yazan değerin, sizin yazdığınız değerden 1 fazla olduğunu göreceksiniz. İşte burada yaptığımız işlem de bu zaten. Kodlama bölümüne gelin ve "+ 1" yazdığınız yari silip "+ 3" yazın. Bu sefer projeyi başlattığınızda, sizin yazdığınız değerden 3 fazla olduğunu göreceksiniz. 

     Orda yaptığımız esas işlemde, bir sayı yerine yine bir tanımladığınız isim yazabilirsiniz. Yani bu da bize oraya sadece sayıların değil, tüm tanımlanan değerleri yazabileceğinizi gösterir.

     Visual Basic'ta işlem ifadeleri; Artı = "+" , Eksi = "-" , Çarpı = "*" , Bölü = "/" , Üssü = "^"  olarak gösterilir. 

VİSUAL BASİC'DA NESNENİN İSMİNİ DEĞİŞTİME

     Her programlama dilinde olduğu gibi, Visual Basic'da da nesnenin ekrandaki ismini değiştirmek gerekir. Bunu yapmazsanız; mesela bir buton eklediniz. Butona da bir işlem verdiniz. Sonra bu butonun ismi CommandButton1 olarak kalacaktır. Kullanıcılar dolayısıyla bu butonun ne yapmasını öğrenmekte zorluk çekeceklerdir. Ayrıca butonun ismi böyle çok biçimsiz görünmektedir. İşte böyle durumlarda bunların ismini değiştirmemiz şarttır. 

     Peki biz bunu kod ile yapmak zorunda mıyız? Tabiki de hayır. Bunun başka bir yöntemi de var ama biz yinede 2 yöntemi de gösterelim. Şimdi ilk olarak bunu kodsuz nasıl yapacağız bunu görelim. İlk olarak Visual Basic programımızı açalım. Sonra projeye bir buton ekleyerek kaydedelim. Şimdi butona bir kez tıklayın. Sonra sağ taraftaki 3 pencereye bakarak, tepesinde properties (özellikler) yazan pencereyi inceleyin. Orada bulunan tüm özellikler CommandButton1'e ait. Aslında hangi nesneye tıkalsanız onun özellikleri ekrana gelir. Daha kısa yolu ise en tepesindeki listeden, değiştirmek istediğiniz nesneyi seçmektir. Şimdi biz burada CommandButton1'in özelliklerini görmekteyiz. Hemen bunun "Name" yazan yerine sakın dokunmayın. Biz bunun "Caption" yazan yerine dokunacağız. "Name", bu nesnenin kodda yazılacak ismini belirler. Buna hiç dokunmasanız daha iyi olur. "Caption" ise, ekranda görülecek ismini belirler. Hemen Caption yazan yerin karşısındaki yazıyı "DENEME" olarak değiştirin. Gördüğünüz gibi ekranda gözüken ismi de otomatik olarak değişti. Şimdi kodsuz kısmın nasıl olduğunu anlamışınızdır.

     Kodlu kısımda ise formun boş yerine tıklayarak kod penceresini açın ve form_load'ın içerisine şu kodları yazın:

Command1.Caption = "DENEME_2"

     Bunu yazdıktan sonra projenizi çalıştırın ve işte sonuç... Butonun açılıştan itibaren hep bu yazıda kalmasını istiyorsanız, bunu form_load'a yazmanız gerekmektedir. Buradaki "Caption" ifadesini daha demin açıkladım. Nesne isminden sonra nokta koyularak bu ifade yazılır. Daha sonra ise eşittir koyularak iki tırnak içerisine nesnenin üzerinde yazması gereken isim yazılır.

     Fakat bu her yerde aynı değildir. Mesela TextBox'ta. Şimdi projeye bir TextBox ekleyin ve form_load'ın altına şu kodu yerleştirin:

Text1.Text = "Buraya tıklayın"

     Projenizi çalıştırdığınızda ise TextBox'ta: "Buraya tıklayın" yazısını göreceksiniz. Bunun anlamı her yerde Caption'un işlememesidir. TextBox'larda bu komutunm aynısı olan ".Text" ifadesi kullanılmaktadır.

VİSUAL BASİC'DA BAĞLANTI OLUŞTURMA

     Mesela bir siteniz var ve buna yaptığınız programdan bağlanmak istiyorsunuz. Bunu yapmanız için Visual Basic'daki bağlantı özelliğini kullanmanız gerekmektedir. Bu özellik ile, istediğiniz bir objeye istediğiniz bir şekilde eylem yapıldığında, o objeden sizin belirlediğiniz web sitesine bir bağ kurabilirsiniz. Bu obje bir buton olsun. Eylem ise tıklama olsun. Biz bu butona tıkladığımızda belirlediğimiz web adresine gideceğiz kısaca. Bunu çok kısa bir kod ile yapacağız elbette.

     Şimdi yeni bir "Standart.EXE" oluşturun ve projeye hemen bir buton ekleyin. Şimdi butona çift tıklayın ve ekranda yazanı inceleyin. Daha önceden bahsetmişmiydim bilmiyorum ama; mesela bir yazı kutusuna (proje çalıştırılmadan önce) çift tıkladığınızda, hemen o yazı kutusunun tıklama fonksiyonu bpş bir şekilde ekranda görüntülenir. Burada gördüğünüz subların arasına şu kodu yerleştirin:

Shell ("explorer.exe http://www.pusulaoyun.tr.gg")

     Şimdi bunları yavaş yavaş açıklayacağım. Buradaki "Shell" öğesi, program ile internet veya bir başka dizin arasında bağ oluşturmak için kullanılan dizindir. Bundan sonra iki parantez açılır ve o parantezlerin içine de iki tırnak işareti koyulur. Bu tırnak içine ilk olarak ana işlem olan "explorer.exe" dosyası koyularak, tanımlanır. Daha sonra da bir karakte boşluk bırakarak, gidilecek bağlantının tam adresi yazılır.

     Şimdi size bunun sadece internetteki bir adrese bağlanmaya yaramadığını kanıtlıyacağım. "explorer.exe" yazan yerden sonraki adresi silin ve oraya (tırnaklar olmadan); "C:WINDOWS" yazın. Daha sonra programı çalıştırıp, butona tıkladığınızda, o dizini açtığını göreceksiniz. İşte size buaradaki kanıtı...

VİSUAL BASİC'DA YAZI DÜZENLERİ  

     Her yazı ile ilgili programda olduğu gibi, Visual Basic'da da yazı düzenleri vardır. Bunlar yazının boyutu, tipi, kalınlığı, üstü - altı çizili olması, italikliği veya rengi olabilirler. Visual Basic'da bunları yapmak çok basit bir eylemdir.

     Şimdi tertemiz bir proje açalım ve projemize bir "Label", bir de "CommandButton" ekleyelim. butonumuza iki kez tıklayıp, butonun tıklanış kodunu ekranda görüntüleyelim. Şimdi bu kodların arasına ilk olarak şunu yazalım:

Label1.FontItalic =  True

     Şimdi buradakileri yavaşça açıklayalım. İlk olarak zaten etkilenecek nesnemizi yazıyoruz. Daha sonra ise nokta koyarak, nesneye etki edecek olan italiklik özelliğini veriyoruz. İtaliklik özelliği "FontItalic" ile verilmektedir. Bunu doğrulamak için eşittir işareti koyup, "True" ya da "False", yani doğru ya da yanlış yazıyoruz. Doğru yazarsanız verdiğiniz özellik gerçekleşir. Yanlış yazarsanız gerçekleşmez. Buarada dikkat edeceğiniz bir nokta daha var. Zaten eşittir koyduktan sonra iki komut alt alta sıralanır ve siz bu ikisinden birini kolaylıla seçebilirsiniz.

     Sıra geldi yazıyı kalınlaştırmaya. Bunun için yanlızca "FontItalic" yazısını silip, "FontBold" yazmanız yeterlidir. Yani bunun da italikleştirmeden bir farkı yoktur. Eğer yazının üstünü çizmek isterseniz, yine "FontItalic" yazısının yerine "FontStrikethru" yazmanız yeterlidir. altını çizmek istiyorsanız, aynen "FontItalic" yarine "FontUnderline" yazmanız yeterlirdir. İşte gördüğünüz gibi tüm bu özellikler, yani altını çizme, üstünü çizme, italikleştirme ve kalınlaştırma özellikleri birbiriyle neredeyse aynıdır.

     Şimdi birbirinden bağımsız olanları, yani yazının boyutu, tipi ve rengini nasıl değiştireceğimizi göreceğiz. İlk olarak üstte yazdığımız kodu silerek, iki sub arasına şu kodu yazınız:

Label1.FontSize = "19"

     Buarada, her zamanki gibi ilk olarak etkilenecek nesneyi ve etki edecek özelliği yazdık. Daha sonra ise her zamanki gibi eşittir işaretimizi koyduk. Burada farklı olan şey doğru ya da yanlış değil de bir sayı yazmamızdır. İki tırnak koyularak, yazının ne kadar büyük olacağının sayısı buraya yazılır. Daha sonra da işlem bitirilir.

     Yazının tipini değiştirmek için de "Font" veya "FontName" özelliği kullanılır. Bu iki özellik de birbirinin aynısıdır. Yani ikisini de kullanabilirsiniz. Nesne yazıldıktan sonra nokta koyularak, bu iki özellikten biri yazılır. Daha sonra eşittir işareti koyularak, iki tırnak arasına hangi tipte olacağı yazılır. Yani mesela Comic Sans türünde yapacaksınız. Bunun için tırnak içerisine "Comic Sans MS" yazılır. Diğer yazı tipleri için de aynı şey geçerlidir.

     Şimdi geldik yazının rengine. Diyelim ki yazıyı kırmızı yapacağız. Bunun için tekrar yukarıdaki kodu silip, şu kodu aynı yere yapıştırın:

Label1.ForeColor = RGB(250, 0, 0)

     Buarada gördüğünüz şey yine aynı mantık. Fakat sondakiler biraz değişik. İlk olarak etkilenecek nesne ve etki edecek özellik yazılır. Daha sonra eşittir işareti koyulur. Buaraya kadar her şey normal. Bundan sonrası da kolay elbette. Daha sonra ise hangi tip renk olacağı yazılır. En çok kullanılan renk türlerinden biri "RGB (Red, Green, Blue)"dir. "RGB" yazıldıktan sonra geriye rengi ayarlamak kalıyor. Bunu ise parantez içinde şu sıraya göre yazılır: "Kırmızı Rengin Miktarı, Yeşil Rengin Miktarı, Mavi Rengin Miktarı". En fazla "255", en az "0" yazılabilir. (0,0,0) demek siyah demektir. (255,255,255) ise beyaz demektir. Daha ayrıntılı renk kodlaması için internetten araştırma yapabilirsiniz.

VİSUAL BASİC'DA PAROLA TİPİ YAZIŞ

     Mesela MSN'den oturum açacaksınız. Bunun için kullanıcı adını ve parolayı girmeniz gerekiyor. Kullanıcı adını yazdığınızda, ne yazdığınızı ekranda görebiliyorsunuz. Fakat şifre yazdığınızda ne yazdığınızı göremiyorsunuz. İşte bunun Visual Basic'da da yapabilirsiniz. Yani yazdığınız yazı yazı kutusunda sizin belirlediğiniz karakterde görülenilir.

     İlk olarak yeni bir proje açın ve projenize bir "TextBox" ekleyin. Daha sonra ise bu "TextBox"a çift tıklayın ve gördüğünüz her şeyi silin. Sonra bu kodu boş sayfaya yapıştırın:

Private Sub Text1_Change()
Text1.PasswordChar = "*"
End Sub

     Bunları yazdıktan sonra projenizi çalıştırın ve "TextBox"a bir yazı yazın. Gördüğünüz gibi yazı gözükmüyor. Yani bizim verdiğimiz karakterlerle gözüküyor. Kod bölümüne göz attığımızda, kodun çok kısa olduğunu görüyoruz. Bunun kolaylığı da burada elbette. Ama ileriki derslerde her kısa koda kolay demiyeceğimizi göreceksiniz. Şimdi kodları yavaşça incelediğimizde, ilk olarak bir nesne ve nesneyi etkileyen olay görüyoruz. Bunun temel anlamı; "TextBox'u değiştirince şunu yap"tır. Yapılacak eylem ise altındaki koddur. İstersek bunu "form_load", yani "form açılırken" eylemiyle de yapabiliriz. Yani ikisi de olabilir. ama biz şimdilik bunda yapıyoruz. Alt koda şöyle bir baktığımızda, ilk olarak her zamanki gibi etkilenecek nesneyi görüyoruz. Nokta işaretinden sonra anlamını bilmediğimiz bir komut çıkıyor karşımıza. Bunun anlamı "ParolaKarakteri"dir. Yani bizim burada yapacağımız, yanlızca karakteri belirlemek olacak. Bu komuttan sonra her zamanki gibi eşittir işareti koyluyor ve ardından iki tırnak atılıyor. Bu iki tırnağın arasına ise gözükecek olan karakter yazılıyor. Bu karaktere klavyemizden istediğimiz şeyi yazabiliriz. Mesela şimdi o karakterin yerine "o" yazın. Yazıyı yazarken karakterlerin "o" olarak gözüktüğünü göreceksiniz.

VİSUAL BASİC'DA KARAKTER SAYISINI SINIRLAMA

     Bir programda kullanıcılara bazı kısıtlamalar getirmek gerekir. Mesela bir hesaplama programı olsun. Bu programda iki tane değer girdisi, bir tane de buton olsun. Bu değer girdisine kullanıcı istediği kadar karakter girebilir. Bu girdiği karakterler artık sınırdan çıkmışsa, bazı hatalara sebep olabilir. İşte bu hataları kullanıcıya götermemek için Visual Basic'ta karakter yazmaya sınır koymak gerekir. Hemen bir proje açıp deneyelim.

     İlk olarak projeye bir "TextBox" ekleyin. Daha sonra formun boş bir yerine tıklayın ve kod penceresini açın. "form_load"ın içine hemen şu kodları yerleştirin:

Text1.MaxLength = "3"

     Şimdi buarada ilk olarak neyin tanımlandığını zaten biliyoruz. Noktadan sonra gelen kısımda yeni bir komut ile karşılaşıyoruz. "MaxLength" komutu, bir yazı kutusuna veya başka bir yazı yazılabilecek olan yerlere karakter girerken, bu karakterlerin en fazla kaç tane olacağını belirten komutdur. Bu komutdan sonra her zamanki gibi eşittir koyulur ve iki tırnak arasına en fazla kaç tane karakter yazılabileceği yazılır. Ama bunu da aşırıya kaçırmayın. Çünkü bazen böyle durumlarda da kullanıcı bazı hatalarla karşılaşabilir. Programı çalıştırdığınızda ise, 3 karakterden fazla karakter giremediğinizi göreceksiniz.

VİSUAL BASİC'DA IF DÖNGÜSÜ

     Neredeyse tüm kodlama dillerinde bulunan döngüler vardır. Bunlardan biri de "if döngüsü"dür. "If"in Türkçe karşılığı "Eğer"dir. Yani biz burada; "Eğer şu olursa şunu yap" diyeceğiz. Burada olacak olan mantık böyledir. Diğer döngülerin de buna benzer mantıkları vardır. Yanlızca birkaç şeyi farklıdır. Kodlama dillerindeki bu döngüler, bizim yazdığımız kodun programı daha iyi anlamasını sağlar. Döngüler herkeze zor gelebilir. Zaten de biraz öyledir. Fakat matığını ve kolaylıklarını anlayınca, pek fazla zorlanmazsınız.

     Bir döngünün içinde başka bir döngü olabilir. Mesela "If"in içinde başka bir "If" olabilir. Şimdi biz bunları geçip kısa bir kod örneği yapacağız. İlk olarak yeni bir proje açın ve forma iki tane "TextBox", bir tane de buton ekleyin. Butona çift tıklayın ve butona tıklanma fonksiyonu ile karşılaşın. Şimdi bunun ortasına şu kodu yapıştırın:

If Text1.Text = "liste" Then
Text2.Text = "Merhaba"
End If

     Şimdi bunları açıklayalım. İlk olarak bir "If" yazıyoruz. Döngümüzün ne olduğunu belirtmek için bunu yazmamız şarttır. Sonra olacak koşulu yazıyoruz. Ben burada; "İlk TextBox'a liste yazısı yazılırsa" anlamını yaptım. İlk olarak eğer olarak belirttik. Daha sonra ise kullanıcının yapacağı koşulu yazdık. Şimdi ise Türkçe karşılığı "Sonra" olan "Then"i koyuyoruz. Çünkü kullanıcı bu koşulu yaparsa, daha sonra ne yapılacağını belirtmemiz lazım. Sonra da otomatik olarak yapılacak koşulu yazıyoruz. En sona ise döngünün bittiğini belirten sonlandırma kodunu yazıyoruz. Gördüğünüz gibi burada da sublar ile aynı mantık yürüyor. Şimdi programı çalıştırıp, ilk kutuya "liste" yazın ve butona tıklayın. İkinci yazı kutusunda "Merhaba" yazdığını göreceksiniz. Bu yanlızca küçük bir örnekti. Bu örnekten yola çıkarak siz binbir türlü şey yapabilirsiniz. Şimdi kodun tam mantığı şöyledir: "Eğer ilk kutuya liste yazısı yazılırsa, ikinci kutuya Merhaba yazısı yazılsın...".

     Dikkat etmeniz gereken tek bir nokta var. O da boşluklar. "If"den sonra bir boşluk bırakılarak koşul yazılır. Daha sonra tekrar bir boşluk bırakılarak "Then" yazılır. Sonra alt satıra inilerek yapılacak koşul yazılır. En son ise "End If" yazılarak döngü tamamlanır.

VİSUAL BASİC'DA FOR-NEXT DÖNGÜSÜ

     "If" döngüsünden sonra, başka bir döngüye daha geçiyoruz. Bu döngü ile ekrana bir yerden bir yere olan sayıları yazdırabilirsiniz. Döngü kullanımı biraz karışık gelebilir. Ama şu ana kadar olan dersleri anlamışsanız, elbette bunu da anlarsınız. İlk olarak yepyeni bir proje açıp, projeye yanlızca bir buton ekliyoruz. Daha sonra butona çift tıklıyoruz ve kodun içine şunu yerleştiriyoruz:

Dim yirmi As Long
For yirmi = 0 To 100 Step 20
Print yirmi
Next

     İlk olarak, geçen başlıklarda gördüğümüz değer tanımlamayı yapıyoruz. Ben değerin adına "yirmi" diyerek tanımladım. Daha sonra ise "For" yazıyoruz. Bunun ne olduğunu bir önceki başlıkta söylemiştim. Ama yine söyleyeyim. Bunu yapmamızın asıl amacı, döngüyü tanımlamak ve bu yapcağımız döngünün hangi döngü türüne ait olduğunu göstermektir. Bunu yaptıktan sonra tanımladığımız değerin ismi yazılarak, eşittir işareti koyulur. Daha sonra ise döngünün başlangıç değeri, yani hangi sayıda başlayacağı yazılır. Sonra ise, Türkçe karşılığı "Kadar" olan "To" koyulur. Bunun amacı bir yerden bir yere kadar olduğunu belirtmektir. Daha sonra ise son değer koyulur ve Türkçe karşılığı "Adım" olan "Step" yazısı yazılır. Daha sonra bir değer koyulur. Şimdi buaradaki "Step" ve ardından gelen değer, döngünün kaçar kaçar gideceğini belirtir. Yani oraya hangi sayı yazılırsa, her sayımda o sayı kadar artarak gidilir. Daha sonra ise yazdırma eylemi yani "Print" koyulur. Bu komut sayıların ekrana yazdırılmasını sağlar. Sonra yazdırılacak olan ve başta tanımladığımız değer yazılır. En son ise sayıları devam ettiren ve döngüyü tamamlayan "Next" yazılır. Bundan sonra kod tamamlanmış olur.

     Projeyi çalıştırdığınızda ve butona tıkladığınızda, sayıların sol üstten, aşağıya doğru, 20'şer bir şekilde sıralandığını göreceksiniz. Bu da döngünün oluştuğu anlamına gelir. Unutmayın ki butonun konumu ile sayıların konumu arasında bir orantı yoktur.


LÜTFEN YORUMLARINIZI EKSİK ETMEYİN...



Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol