FORMLAR ve ÖZELLİKLERİ
Windows uyumlu programlardaki pencerelerin görevini,
Visual Basic projelerindeki Form'lar yerine getirmektedir. Formlar Visual Basic
programlarının en önemli bileşenleridir. Visual Basic projeleri en azından bir
form içerirler. Visual Basic ilk kez başlatıldığı zaman varsayılan adı project1
olan projeye otomatik olarak Form1 adında bir form eklenmektedir.
Şekil 11.1
Yukarıdaki ekranda (Şekil 11.1) görmüş olduğunuz gibi formun sol üst köşesinde form başlığı ve Formun sağ üst köşesinde ise üç düğme bulunmaktadır. Bu düğmeler, Ekranı kapla, Simge durumuna küçült ve formu kapat düğmeleridir. Üzerinde düz çizgi bulunan düğme formu simge durumuna küçültür. Üzerinde çarpı işareti olan düğme ise formu kapatır. Dikdörtgen işaretli düğme ise formun, ekranı tam olarak kaplamasını sağlar.Formun sol üst kösesinde bir de denetim düğmesine ait düğme bulunmaktadır. Bu düğme üzerine mouse ile tıklarsanız Şekil 11.2'de görüldüğü gibi Forma ait denetim menüsü açılır. Formun denetim menüsünde, Formu taşıma, simge durumuna küçülme, önceki boyutuna getirme ve formu kapatma gibi işlemleri gerçekleştiren komutlar bulunmaktadır.
Şekil 11.2
11.1. Properties Penceresi
Formlar Visual Basic uygulamalarının en önemli nesneleridir. Diğer nesnelerde olduğu gibi Formların başlığı, rengi, ekrandaki yeri, büyüklüğü gibi özellikleri mevcuttur. Çalışmış olduğunuz projeye yeni bir form eklediğinizde veya hard diskte bulunan bir formu çağırdığınızda formun her özelliği için ayrı bir değişken Visual Basic tarafından otomatik olarak tanımlanır.
Properties penceresi, nesnelere
ait özellikleri içeren değişkenler topluluğudur. Hangi nesnenin özelliklerini
öğrenmek istiyorsanız önce o nesneyi aktif (seçili) duruma getirmelisiniz. Daha
sonra properties penceresine bakarak o nesnenin
özelliklerini öğrenebilirsiniz. Visual Basic
programı çalıştırıldığında, properties penceresi ekranda yoksa, Şekil 11.3'de
görülen View menüsündeki Properties Window komutunu kullanarak properties penceresini ekrana
getirebiliriz.
Şekil 11.3
Bu komutu seçtiğinizde karşınıza formlar üzerine
değişiklik yapabileceğiniz, Formlara eklediğiniz nesnelerin özellikleri bulunan
properties penceresi (Şekil 11.4) çıkacaktır.
Şekil 11.4: Properties penceresi
Visual Basic uygulamalarındaki projelerde birden fazla Form olabilir. Hangi Forma ait özelliklerin bulunduğunu Properties penceresinin başlık satırından sonraki ilk satırına bakarak tespit edebilirsiniz. Formların özelliklerinde değişiklik yapmak, normal bir değişkene değer atamadan farksızdır.
11.2. Formları, Ekranı Kaplama v
e Simge Durumuna KüçültmeŞekil 11.5:
MinButton özelliğinin False durumuna getirilmesiBu değişikliği yaptıktan sonra projeyi çalıştırdığınızda
Şekil 11.6'da görüldüğü gibi Simge durumuna küçültme düğmesinin pasif halde
olduğunu göreceksiniz.
Şekil 11.6
Şekil 11.7: MaxButton özelliği
ni False yapma Bu işlemlerden sonra projeyi çalıştırırsak, Şekil 11.8'de görüldüğü gibi Ekranı Kapla düğmesinin de yok olduğunu göreceğiz.Şekil 11.8
11.3. Denetim Düğmesi ve
Menüsü Windows uyumlu pencerelerdeki gibi Visual Basic ile oluşturulan formlarda denetim düğmesi bulunmaktadır. Denetim düğmesi üzerine mouse ile tıklarsanız Denetim menüsü açılır. Şekil 11.9'da verilen ekranŞekil 11.9
Şekil 11.10
MinButton ve MaxButton özellikleri False yapıldığı için
simge durumuna küçültme ve ekranı kaplama komutları da Denetim menüsünden
çıkarıldı. Formlarda denetim menüsünün olması istenmiyorsa, properties
penceresindeki ControlBox özelliğine Şekil 11.11'deki gibi False değeri
aktarılmalıdır.
Şekil 11.11
ControlBox özelliğine properties penceresinden False
değerini aktardıktan sonra, projeyi çalıştırırsanız Şekil 11.12'de verilen ekran
görüntüsünü alırsınız.
Şekil 11.12
11.4. Formun Adını ve Başlığını Değiştirmek
Şekil 11.13
Şekil 11.13'de verilen ekran görüntüsünü Name özelliğine Kayit ve Caption özelliğine Kayıt Girişi değerlerini yükledikten sonra aldım. Bu işlemleri komut satırında da yapabiliriz. Mesela Kayıt Girişi olarak değiştirdiğimiz Caption özelliğini, komut satırında Giriş olarak tekrar değiştirmek istersek, Şekil 11.14'deki program satırlarını yazmalıyız.Şekil 11.14: Form başlığını değiştirme
Şekil 11.15
11.5. Formun Boyutlarını Değiştirmek
Çalışma sırasında mouse ile veya program satırları ile formların boyutlarını rahatlıkla değiştirebilirsiniz. Visual Basic Projesi dahilinde oluşturduğunuz formların veya pencerelerin boyutlarında çalışma sırasında değişiklik yapılmasını istemiyorsanız, formu ilk oluştururken Forma ait Properties penceresinde (Şekil 11.16) BorderStyle özelliğinde değişiklik yapmalısınız. BorderStyle özelliği 2-Sizable değerini içeriyorken çalışma anında formun boyutlarını mouse ile değiştirebilirsiniz.
Şekil 11.16
Şekil 11.17
Sadece denetin menüsündeki komutlarla pencereyi simge durumuna küçültülebilir veya pencerenin ekranı kaplamasını sağla
yabilirsiniz. Eğer MinButton ve MaxButton özelliklerini de False durumuna getirirseniz pencereyi Simge durumuna veya Ekranı kaplayacağı duruma asla getiremezsiniz. Bu durumda pencerenin boyutlarını mouse ile değiştiremezsiniz.
Şekil 11.18
11.6. Formun Boyutlarını Belirlemek
Denetim menüsündeki komutlarla veya mouse ile Form boyutlarında değişiklik yapılabileceği önceki konularda belirtilmişti. Çalışma ve tasarım anında Form veya pencerenin güncel boyutları Visual Basic tarafından otomatik olarak tanımlanan Width ve Height değişkenlerinde tutulmaktadır. Visual Basic’te varsayım olarak Twip birimi kullanılmaktadır.
With ve Heigth değişkenleri tasarım anında mouse ile formun
boyutlarında yapılan değişikliklerden hemen etkilenir. Programcı isterse formun
boyutlarını mouse ile belirlemek yerine doğrudan Properties penceresinde (Şekil
11.19), Twip cinsinden Width ve Height adlı form değişkenlerinin içeriklerinde
değişiklik yapabilir.
Şekil 11.19
Şekil 11.20
Şekil 11.21
Şekil 11.22
11.7. Formun Ekrandaki Yerini Belirlemek
Windows ortamında birden fazla Formu aynı anda bulundurup kullanma imkanına sahipsiniz. Hazırlanan form veya pencere ilk kez ekrana getirildiğinde pencerenin ekrandaki konumu önemlidir. Pencerenin veya formun ekrandaki konumu Left ve Top adlı Form değişkenleri ile belirlenmektedir.
Forma ait properties penceresindeki Left ve Top
özelliklerinin başlangıçtaki varsayılan değerleri 0' dır. Proje çalıştırıldığı
zaman pencere masaüstünün sol üst köşesinde konumlanır. Kullanıcı, tasarım
anında Left ve Top değişkenlerinin içeriğini Şekil 11.23'deki pencereden
değiştirerek formun masaüstündeki yerini belirleyebilir.
Şekil 11.23
Formun masaüstündeki yerini tasarım anında properties penceresinden yararlanarak belirlemek yerine program kodu yazarak ta belirtebilirsiniz. Bunun için Left ve Top değişkenlerine, program satırında iken değer aktarmalısınız. Şekil 11.24'te verilen örnekte, mouse ile form üzerinde her tıklandığında Left veTop değişkenleri 300 Twip artarak formun masaüstündeki yeri değişecektir.
Şekil 11.24
11.8. Formlarda Font Kullanımı
Formlara bilgi yazımı, font ve punto seçiminin yapılması gibi işlemlerin program satırında nasıl belirlendiğini daha önceki konularımızda bahsetmiştik. Şimdi form bağlamında fontlar hakkında daha ayrıntılı bilgi verilecektir. Bildiğiniz gibi Visual Basic projeleri dahilinde kullanılan formlara print deyimi ile sabit bir bilgi yazıla biliniyordu ve formlara düğmeler, liste kutuları yani başka nesneler dahil edilebiliyordu.
Şekil 11.25
Properties penceresindeki Font özelliğinin sonuna konulan ve üzerinde 3 nokta bulunan düğme üzerinde tıklarsanız ekrana Şekil 11.26'da görülen Yazıtipi diyalog kutusu gelir. Bu diyalog penceresinden istediğiniz yazı tipini, yazı biçemini ve yazı boyutunu seçebilirsiniz.Şekil 11.26: Yazıtipi dayalog kutusu
Ayrıca program kodu yazarak ta çalışma anında istediğiniz
font ve punto değişikliği yapabilirsiniz. Şekil 11.27'de verilen program
satırları ile yazının font ve punto seçimi yapılmaktadır.
Şekil 11.27
FontName : Yazının tipini belirler.FontSize : Yazının puntosunun belirler.
FontBold : Yazının koyu olmasını sağlar.
FontItalic : Yazıların italik basılmasını sağlar.
11.9. Formlara Resim Yerleştirmek
Formlar ilk yüklendiğinde üzerlerinde herhangi
bir nesne veya resim bulunmaz. Eğer siz bu zemine istediğiniz bir resmi veya
fotoğrafı yerleştirmek istiyorsanız forma ait Picture adlı form değişkeninden
yararlanmalısınız. Formlarda değişik tip ve formatta (Bitmat, Icon, Metafile)
dosyalar kullanılabilir. Formun zemin rengini BackColor adlı form değişkeni ile
değiştirebilirsiniz.
Şekil 11.28
Şekil 11.29:
Load Picture diyalog kutusu
Şekil 11.30:
Forma resim dahil ettikten sonraki ekran görüntüsü
Şekil 11.31
Eğer forma meta file dosyası yerine ICO uzantılı ikon dosyası dahil edilmiş olsaydı, Picture değişkenin karşısında bu kez (Icon) bilgisi olurdu.
Çalışma anında forma ikon veya
resim dosyası eklemek için LoadPicture fonksiyonundan yararlanılır.
LoadPicture() fonksiyonu ile hard diskten okunan resim veya ikon dosyası, forma
ait Picture değişkenine aktarılır.
Şekil 11.32
Şekil 11.33
Forma dahil edilecek resim dosyası, programın işletimi sırasında yani çalışma anında belirlenebilir. Bu amaçla Şekil 11.34'deki program satırlarını yazdık. Çalışma anında forma dahil edilecek resim dosyasının adı kullanıcıdan istenir. Kullanıcının seçtiği dosyanın adı bir değişkene aktarılır.
Şekil 11.34
Kullanıcıdan dosya adı istenirken, isteğe bağlı olarak Windows’un standart diyalog kutularından yararlanılabilir. İster tasarım anında ister çalışma anında olsun, Forma dahil edilen resmin üzerine başka bilgiler yazılabilir. Formun üzerinde bulunan diğer nesneler resim ekleme işleminden etkilenmez.
11.10. Zemin Renginin Belirlenmesi
Şekil 11.35:
Properties penceresi
Şekil 11.36
11.11. Formun Başlangıç Durumunu Belirlemek
Şekil 11.37'de görülen WindowState adlı form
değişkeni yardımıyla yüklenen bir formun başlangıç durumu
seçilebilmektedir.
Şekil 11.37
Bu değişken varsayım olarak 0-Normal değerine sahiptir. Eğer form yüklenir yüklenmez, formun ekranı kaplamasını veya hemen simge durumuna geçmesini istiyorsanız, WindowState değişkeninin içeriğinde değişiklik yapmalısınız. WindowState değişkeni 0-Normal değeri de dahil olmak üzere üç sabit değerden birini alabilir. Program çalıştırıldığında, formun simge durumunda ekrana gelmesini istiyorsanız WindowsState özelliğine 1-Min
imized, ekranı kaplamasını istiyorsanız 2-Maximized değerini aktarmalısınız. Bu işlemleri program kodu yazarak ta yapabilirsiniz. Örneğin aşağıda (Şekil 11.38) verilen program kodu ile söz konusu formun üzerinde çift tıklandığında, form simge durumuna geçecektir.
11.12. Ölçekleme Birimini Belirlemek
Visual Basic projelerinde varsayım olarak Twip
ölçü birimi kullanılmaktadır. Bir inç yaklaşık olarak 1440 Twip’e karşılık
gelmektedir. Visual Basic dahilinde Twip’ten farklı ölçü birimleri de mevcuttur.
Form dahilinde geçerli olan ölçü birimlerini değiştirmek için Şekil 11.39'da
görülen ScaleMode özelliğinden yararlanılır.
Şekil 11.39
Işıklı bant ScaleMode değişkenin üzerinde iken geçerli ölçü biriminin yazılı olduğu liste kutusu açılırsa, Properties penceresine kullanılabilecek ölçü birimleri listelenir. Bunlardan hangisi seçilirse ölçekleme birimi olarak o kullanılır.
Şekil 11.40
11.13. Formları İptal Etmek
Şekil 11.41
Enabled değişkeninin içeriği False olduğu sürece form üzerinde herhangi bir işlem yapılamaz. Form kapatılamaz, simge durumuna getirilemez. Eğer True ise söz konusu form şimdiye kadar verilen örneklerde olduğu gibi kullanılabilir ve form üzerinde izin verilen her türlü işlem yapılabilir.
11.14. Çizgi Kalınlığını Belirlemek
Formun üzerine Circle() fonksiyonu daire
çizerken veya Line() fonksiyonu ile çizgi çizerken geçerli olacak çizgi
kalınlığını belirlemek için Şekil 11.42'de görülen DrawWidth özelliğinden yararlanırız.
Şekil 11.42
DrawWidth değişkeninin içeriği başlangıçta 1 değerine
sahiptir. Bu değeri değiştirirseniz verilen değer oranında çizgi kalınlığı
artar. Bu değişkenin değerini program kodu ile de değiştirebiliriz. Şekil
11.43'deki örnekte değişik çizgi
kalınlıklarında bir dikdörtgen ve bir daire çizdirilmektedir.
Şekil 11.43
Programı çalıştırdığımızda elde ettiğimiz ekran
görüntüsü Şekil 11.44'deki gibi
olmuştur.
Şekil 11.44