VISUAL BASIC KONTROL ELEMANLARI

Visual Basic'in kullanıcılara sunduğu yeniliklerin başında kontrol elemanları gelmektedir. Kullanıcı artık küçük bir kontrol için uzun uzadıya program kodu yazmak zorunda kalmayacak.

Visual Basic programı çalıştırıldığı zaman Toolbox penceresinde standart Visual Basic elemanları görüntülenir. Tabii ki kontrol elemanları bunlarla sınırlı değildir. OCX uzantılı olan kontrolleri Toolbox penceresine alıp kullanabilmek için Project menüsündeki Components seçeneği ile açılan pencereyi kullanabilirsiniz. Bu pencerede işaretlediğiniz kontroller Toolbox penceresine eklenmiş olacaktır. Yine Toolbox penceresinde var olan bir kontrol elemanını kaldırmak için Components penceresinden işaretini kaldırmak yeterlidir. Bir kontrol elemanını Toolbox'tan çıkarmak için o elemanın program içerisinde kullanılmıyor olması gerekir.

Her kontrol elemanı kendisine ait olan özellikleri (properties) sayesinde kullanıcıya çok sayıda seçenek sunmaktadır. Bu özellikler kullanılarak programın gerek tasarımı, gerekse çalışması sırasında programa istenen şekil ve estetik verilebilmektedir. Properties penceresinde bulunan özelliklerin bir kısmı hem tasarım hem de programın çalışması sırasında değiştirilebilir.

Bir kontrolün properties'ini komut satırında değiştirmek için o properties'e aşağıdaki gibi atama yapılır.

Kontrol1Adı.PropertiesAdı=Değer

Buradaki "Kontrol1Adı", ilgili kontrolün Name özelliğine verilen isimdir.

Kullanıcı her bir kontrol elemanını seçmek suretiyle formun istenilen yerine ve istenilen boyutta farenin sol tuşuna basılı tutarak çizebilir. Veya kontrol elemanı çift tıklanarak da form üzerine alınabilir.

Aşağıda her kontrol elemanını tek tek ele alarak bunların açıklamasını ve özelliklerini vereceğiz.

 

 

14.1. TEXTBOX KONTROL (Metin kutusu)

 

Bilgi girişi için kullanılan bir kontroldür. Programın çalışması veya tasarımı sırasında metnin kullanıcı tarafından değiştirilebilmesinin yanında kesme, kopyalama, yapıştırma, aşağı-yukarı, sağa-sola ilerleyebilme ve birden fazla satır girebilme gibi özelliklere de sahiptir.

Properties

Properties penceresi o anda seçilmiş olan elemana ait özellikleri görüntüler. Bu özellikler kullanıcı tarafından değiştirilebilir.

Text : Textbox kutusuna girilen metin, Text parametresine atanır. Bu özellik kullanılarak kullanıcının girdiği metin üzerinde işlem yapılır. Örneğin çalışma sırasında "Text1" adlı metin kutusuna "Nevzat Alabay" yazmak için aşağıdaki komut satırı ile Text1 metin kutusunun Text özelliğine "Nevzat Alabay " değeri yüklenir.

Text1.Text="Nevzat Alabay"

ToolTipText : Windows altında çalışan bir çok programda, program öğelerinden birinin üzerinde mouse ile kısa bir süre durduğunuzda, onun ne işe yaradığını yazan küçük bir yazının geldiğini görmüşsünüzdür. VB'de de bu iş o kontrolün ToolTipText özelliğine atanacak metinle yapılır. Bu özelliğe verdiğiniz metin, kullanıcının o kontrol üzerinde kısa bir süre durmasıyla küçük bir kutu içerisinde gösterilecektir. Örnek olması için Şekil 14.1'deki formu hazırladım.

Şekil 14.1

Text1 ve Text2'ye girilen sayıların ortalamasını Text3 metin kutusuna yazmasını istiyorum. Ayrıca kullanıcı Text1 üzerinde durunca "1. Sayıyı giriniz", Text2 üzerinde durunca "2.Sayıyı giriniz", Text3 üzerinde durunca "2 sayının ortalaması" şeklinde yazmasını istiyorum. Bu amaçla Şekil 14.2'de görülen program satırlarını yazdım.

Şekil 14.2

Program çalıştırıldıktan sonra kontrollerin üzerinde mouse ile kısa bir süre durursanız, Şekil 14.3'deki gibi o kontrolle ilgili açıklamayı gösteren bir kutu açılacaktır.

Şekil 14.3

MultiLine : Bu özellik True ise Text kutusuna birden fazla satır girilebileceğini gösterir. False ise tek satır girilebilir.

Alignment : Metin kutusu içerisine yazılan yazının sağa, sola veya ortaya yazılmasını sağlar.

ScrollBars : Multiline özelliğinin True olması durumunda etkili olan bu özellik text kutusu içindeki yazıyı aşağı-yukarı ve sağa-sola kaydırmak için kaydırma çubuklarının eklemesini sağlar. Bu özellik 0 olursa kaydırma çubukları eklenmez, 1 olursa sağa-sola kaydırma çubuğu eklenir, 2 olursa aşağı-yukarı kaydırma çubuğu eklenir, 3 olursa hem sağa-sola hem de aşağı-yukarı kaydırma çubuğu eklenir.

MaxLength : Text kutusuna girilebilecek maksimum karakter sayısını belirler. Buna 0 verilirse üst sınır 32 karakter olur.

PasswordChar : Text kutusuna şifre girmek için kullanılır. Kullanıcının girdiği karakterlerin görülmesini istemiyorsanız PasswordChar özelliğine bir karakter girerek, kullanıcının girdiği bütün karakterlerin bu karakterle görülmesini sağlayabilirsiniz. Örneğin buraya '*' girerseniz girilen bütün karakterler '*' ile gösterilecektir.

Locket : Text kutusunun Locked özelliği True yapıldıktan sonra kullanıcı Text kutusu üzerinde hiçbir değişiklik yapamaz.

BorderStyle : Nesnenin ekran üzerindeki sınırlarının çerçeve şeklini belirler. Bu özellik 1 ise tek çizgili çerçeve ile sınırları çizilir., 0 ise çerçeve çizilmez.

Appaarance : Bu özellik kontrolün üç boyutlu görünümünü sağlar. Bu özelliğin değerini 1 verirseniz üç boyutluymuş gibi, 0 verilirse düz olarak gösterilir.

Enabled : Nesnenin aktif veya pasif olmasını sağlar. Text kutusunun Enabled özelliği False ise kullanıcı metin kutusuna giriş yapamaz.

Visible : True ise nesne görülür, False yapılırsa görülmez.

FontBold : True ise nesne için kullandığı yazıyı koyu yapar.

FonItalic: True ise nesne için kullanılan yazı biçimi italik olur.

FontUnderline : True ise nesne için kullanılan yazının altını çizer.

FontName : Nesne için kullanılan yazının fontunu belirler.

FontSize : Nesne için kullanılan yazının puntosunu belirler.

BackColor : Nesnenin zemin rengini değiştirir.

ForeColor : Yazının rengini belirler.

Height,Width : Nesnenin boyunu ve enini belirler.

Left, Top : Nesnenin sol ve üst noktalarının koordinatlarını belirler.

Index : Aynı isimli birden çok nesne oluşturulmuş ise VB bu nesneleri bir dizi olarak görür. Index parametresi bu nesnenin dizideki kaçıncı eleman olduğunu belirler, bu nesneye bu dizi indexiyle ulaşılır. Örneğin Index özelliği 3 olan bir text kutusunun Text özelliğine;

Text1(3).Text

komut satırı ile ulaşılabilir.

MousePointer : Mouse göstergesinin nesne üzerine geldiğinden alacağı şekli belirler. Bu özelliğe 0 ile 11 arası değer verilebilir.

TabStop : Bu özellik True ise bu nesneye tab tuşuyla ulaşılabilir, False ise ulaşılamaz.

SelStart, SelLength : Bloklama dediğimiz mouse ile veya klavyeden yapılan işlemi, bu özellikleri kullanarak komut satırında da yapabiliriz. Bu özellikler bloklamanın text içinde başlayacağı konumu ve bloklamanın uzunluğunu belirler.

Text1.SelStart=0

Text1.SelLength=Len(Text1) - 1

Bu iki satır ile text kutusunun içeriği seçilmiş olur.

SelText : Seçilmiş olan metin bu özelliğe aktarılır. Seçili olan metin üzerinde işlem yapmak istenirse bu özellik kullanılır.

Text1.SelText="Bilgisayar"

Satırı ile text1 içinde seçilmiş olan kısım yerine "Bilgisayar" yazılacaktır.

 

 

14.2. LABEL KONTROL (Etiket)

Daha çok kullanıcıya form üzerinde bilgi vermek için kullanılır. Bu nesneye kullanıcı tarafından giriş yapılamaz. Kullanıcının giriş yapabilmesi haricinde text kutusuna çok benzer.

Properties

Caption : Nesnenin üzerindeki yazı bu özellik ile belirlenir.

Şekil 14.4

Şekil 140.4'de görüldüğünüz gibi Label nesnesi seçili durumda iken Caption özelliğine yazdığımız "Adınız giriniz" yazısı, nesne üzerine aynı şekilde yazıldı.

Autosize : Bu özellik True ise nesnenin boyutları içeriğinin boyutlarına göre yeniden ayarlanacaktır. İçeriği değiştiği anda boyutları da kendiliğinden değişecektir.

BackStyle : Bu özellik nesnenin üzerinde bulunduğu konuma uymasını sağlar. Bu özelliğe değer olarak 0 verilirse, üzerinde bulunduğu nesnenin görülmesini sağlar, yani bir cam üzerine yazılmış gibi davranır, 1 verilirse kendi zemin rengi üzerinde bulunur ve altındaki nesneyi göstermez.

14.3. COMMAND BUTTON (Komut düğmesi)

Bir olayın kullanıcı tarafından başlatılması için programlarda çok kullanılan kontrollerden biridir.

Properties

Caption : Komut üzerinde yazılacak olan mesajı içerir. Diğer nesnelerin Caption özelliğinde olduğu gibi altı çizili harf o nesnenin kısa yol tuşudur ve alt tuşuyla birlikte altı çizili harfe basılması durumunda nesne aktif hale gelir. Altı çizili harfi belirlemek için o harfin önüne & işareti konur. Örnek olması için Şekil 14.5'de görülen formu hazırladım.

Şekil 14.5: Örnek form

Yukarıdaki şekilde (Şekil 14.5) gördüğünüz gibi forma Hesapla adında bir komut düğmesi yerleştirdim. Bu düğmeye bastığım zaman Text1 kutusuna girilen sayının karesini alıp Text2 kutusuna yazmasını istiyorum. Bu amaçla Command1 adlı düğmenin Click yordamına Şekil 14.6'da verilen komut satırını yazdım.

 

 

Şekil 14.6: Text1'e girilen değerin karesinin alan program

Programı çalıştırıp Text1 kutusuna bir sayı girdikten sonra Şekil 14.7'de verilen ekran görüntüsünü aldım.

Şekil 14.7

Hesapla düğmesine bastıktan sonra aldığım ekran görüntüsü ise Şekil 14.8'deki gibiydi.

Şekil 14.8: Hesapla düğmesine bastıktan sonra alınan ekran görüntüsü

Style : Bu özellik komut düğmesinin üzerinde yazımı, resim mi olacağını belirler. Buradaki değer 0 ise komut düğmesinin üzerinde Caption özelliği ile belirlenen yazı bulunur, 1 ise Picture özelliği ile belirlenen resim bulunur.

Picture, DisabledPicture, DownPicture : Eğer komut düğmesinin Style özelliğine 1 verilerek resimli bir komut düğmesi olacağı belirtilmişse bu üç özellikle komut düğmesi üzerinde bulunacak resim belirlenebilir.

Picture özelliği ile belirlenen resim komut düğmesi aktif (Enabled özelliği True) iken,

DisabledPicture özelliği ile belirlenen resim komut düğmesi pasif (Enabled özelliği False) iken,

DownPicture özelliği ile de komut düğmesi basılı iken gösterilecek resim belirlenir.

Default : Bir komut düğmesinin default özelliği True ise o düğmenin bulunduğu form üzerinde Enter'e basılması durumunda o düğme tıklanmış gibi olur.

Cansel : Bu özellik de default özelliği gibidir ancak ESC tuşu ile aktif hale gelir.

14.4. CHECKBOX (İşaret Kutusu)

Windowsta çok kullanılan kontrollerden biri de kullanıcının belirli özellikleri aktif veya pasif hale getirmek için kullandığı CheckBox' lardır. Anlaşılırlığı ve kullanımı kolay olması sebebiyle kolay kullanılabilir arabirimler oluşturmak için oldukça kullanışlı bir kontroldür.

Komut düğmesinde olduğu gibi Style özelliği ile ChecBox kontrolünün resimli olması sağlanabilir. Picture, DisabledPicture ve DownPicture özellikleri ile de kontrolün üç durumu için farklı resimler yüklenebilir. Yine işaretin sağda mı veya solda mı olacağı Alignment özelliği ile belirlenebilir.

İşaret kutusuna örnek olması için küçük bir proje hazırlayacağım. Proje için önce Şekil 14.9'da ekran görüntüsü verilen formu düzenledim.

Şekil 14.9

Gördüğünüz gibi formumuza birer tane Label ve Textbox nesnesi ile Check1 ve Check2 adında iki tane Checkbox nesnesi yerleştirdim. Kalın yazan kontrol nesnesini işaretlediğimde metin kutusuna yazılan yazının kalın, aksi taktirde normal yazmasını istiyorum. Aynı şekilde İtalik yazan kontrol nesnesini işaretlediğimde metin kutusuna yazılan yazının italik olmasını, aksi taktirde düz yazmasını istiyorum. Bunun için Şekil 14.10'te gördüğünüz program satırlarını yazdım.

Şekil 14.10

Text kutusunun FontItaIic ve FontBold özellikleri direkt olarak Check kutusunun Value özelliğine eşitlenmiştir. Hatırlayacağınız gibi FontBold ve FontItalic değerleri True veya False değerlerini alabilir. False değeri 0 değerine eşittir, 0 olmayan değer ise True olduğunu gösterir. Dolayısıyle CheckBox'un 0 olması seçilmemiş olduğunu yani FontBold'un False olduğunu, 1 olması ise seçilmiş yani FontBold'un True olduğunu gösterir.

Projeyi çalıştırıp metin kutusuna girdiğim metni kalın ve italik yazması için Kalın ve İtalik kutularını işaretledim. Şekil 14.11'de gördüğünüz gibi girilen yazı kalın ve italik yazılmıştır.

Şekil 14.11

14.5. HSCROLLBAR & VSCROLLBAR (Yatay ve Dikey kaydırma Çubukları)

Biri yatay diğeri dikey olmak üzere her iki kaydırma çubuğu da aynı özelliklere sahiptir. Bu kaydırma çubukları ile bir veri tabanında kayıtlar arasında ileri ve geri gitmek için kullanılabileceği gibi bir metinde veya resimde de kullanılabilir.

Properties

Value : Kaydırma çubuğunun temsil ettiği değeri gösterir, bu değer max ile min arasında bir sayıdır ve kaydırma çubuğu üzerinde değişik şekillerde değiştirilebilir.

Kaydırma çubuğunun uçlarındaki ok ile azaltılıp, çoğaltılabilir. Bu olay smallchange olarak adlandırılır.

Doğrudan kaydırma çubuğunun üzerine mouse ile tıklanarak değer arttırılıp azaltılabilir. Bu olay largechange olarak adlandırılır.

Kaydırma çubuğunun üzerindeki hareket eden kutucuk mouse ile istenen konuma getirilerek değer azaltılıp, arttırılabilir. Bu olay da scrollchange olarak adlandırılır.

Max,Min : Kaydırma çubuğunun alabileceği maksimum ve minimum değerdir.

LargeChange : Kaydırma çubuğu üzerinde tıklanması halinde scroll.value' nin ne kadarlık bir değişime tabi tutulacağını belirler.

SmalChange : Kaydırma çubuğunun iki kenarındaki oklarla scroll.value' nin ne kadarlık bir değişime tabi tutulacağını belirler.

Text kutusunun rengini kaydırma çubuklarını kullanarak değiştirecek bir örnek yapalım. Bu iş için bir tane metin kutusu ile üç tane dikey kaydırma çubuğu kullanalım. Kaydırma çubuklarından herbiri bir temel rengi temsil etsin. Şimdi bu proje için gereken formu Şekil 14.12'deki gibi düzenleyelim.

Şekil 14.12

Properties penceresinden kaydırma çubuklarının Max, Largechange ve Smallchange değerlerini sırası ile 255, 4, 2 olarak değiştirdikten sonra Şekil 14.13'de verilen program satırlarını yazdım.

Şekil 14.13

Kaydırma çubuklarının yukarıya veya aşağıya kaydırılması ile Vscroll1, Vscroll2 ve Vscroll3 değerleri değişecektir ve dolayısıyla metin kutusu rengi de değişecektir. Projeyi çalıştırıp kaydırma çubuklarını rasgele konumlandırdığımda Şekil 14.14'deki ekran görüntüsünü aldım.

Şekil 14.14

 

 

 

14.6. TİMER KONTROL (Zamanlayıcı)

Programda belirli aralıklarla aktif hale gelip belirli işleri yapabilmek amacıyla kullanılan bir kontroldür.

Bu kontrol tasarım sırasında ekranda görülmesine rağmen çalışma esnasında görülmez. Kontrolün Enabled özelliği True veya False yapılarak herhangi bir anda aktif veya pasif hale getirilebilir.

Properties

Enabled : Bu özellik False yapılırsa Timer nesnesinin çalışması durdurulur, tekrar True yapılıncaya kadar Timer olayı meydana gelmez.

Interval : Timer olayının gerçekleşeceği mili saniye cinsinden zaman periyodudur. Alabileceği değerler 1-65535 arasıdır. 0 değeri Timer' i pasif hale getirir.

 

14.7. FRAME KONTROL (Çerçeve)

Bazı kontrolleri gruplamak için kullanılan bir kontroldür. Bu çerçeveler içine konan kontroller, çerçeveye bağımlıdırlar ve konumları itibarı ile bu çerçevenin dışına taşamazlar. Özellikle birkaç kontrolü birden görünür veya görünmez yapmak için hepsinin visible özelliğini tek tek değiştirmek yerine çerçevenin visible özelliği değiştirilerek çerçeve içindeki tüm kontroller aynı anda görünmez yapılabilir. Aynı durum taşıma için de geçerlidir her birini tek tek taşımak yerine, çerçeve taşınır. Çerçevelerin buna benzer bir çok faydaları vardır. Özellikle Option Buttonlarının kullanılmasında çerçeve kullanmak zorunlu hale gelebilir.

Şekil 14.15'de Frame nesnesinin kullanıldığı bir form tasarımı görülüyor.

Şekil 14.15

OPTİON BUTTON (Seçenek düğmesi)

Option Button kontrolü CheckBox' tan farklı olarak bir kaç seçenekten birini seçme imkanı veren bir kontroldür. Bu kontrolün tek başına kullanılması anlamsızdır. Birkaç seçenekten birini seçme imkanı veren bir kontrol olduğu için en az iki tane birlikte kullanılmalıdır. Gruptaki Option Button düğmelerinden biri seçildiğinde diğeri otomatik olarak seçili olmaktan çıkar. Yani aynı anda bir grupta iki tane işaretli düğme bulunmaz.

Aşağıdaki (Şekil 14.16) formda düğmelerden biri seçildiğinde diğerinin seçilmişliği kendiliğinden kalkacaktır.

Şekil 14.16

Şimdide aynı forma Şekil 14.17'de gibi farklı türden seçenekler yerleştirelim.

Şekil 14.17

Bu durumda kullanıcı medeni hal ve öğrenim durumunu birlikte seçemeyecektir. Çünkü yedi düğmeden sadece biri seçilebilir. Medeni hali seçtiğinizde öğrenim durumunun seçilmişliği kalkacak, öğrenim durumunu seçtiğinizde de diğeri kalkacak. Option Buttonların bu özelliğinden dolayı bunların bir gruplayıcı kontrolün içinde kullanılma mecburiyeti vardır. Bu iş için Frame veya PictureBox kontrolü kullanılabilir.

Şekil 14.18

Şekil 14.18'deki gibi düğmeler çerçevelere yerleştirildikten sonra her iki grup kendi arasında bağımsız olarak hareket edebilecektir.

Properties

Value : Bu özelliğin True olması option buttonun seçilmiş olduğunu gösterir.

14.8. SHAPE KONTROL (Şekil Kontrol Elemanı)

Shape, grafiksel bir kontrol olup dikdörtgen, kare, elips, çember, oval kare ve oval dikdörtgen şekillerini oluşturmaya yarar.

Properties

Shape : Kontrol elemanın çizeceği şekli belirler. 0-5 arası bir değer alabilir. Bu değerler Tablo 14.1'de verilmiştir.

Shape

Şekil

Shape

Şekil

0

Dikdörtgen

3

Çember

1

Kare

4

Oval dikdörtgen

2

Elips

5

Oval kare

Tablo 14.1: Kontrol elemanının hangi şekli çizeceğini belirten değerler

BoderStyle : Bu özellik nesnenin çerçeve biçimini belirler. Çerçeve biçimleri ve BorderStyle özelliğinin aldığı değerler Tablo 14.2'de verilmiştir.

BorderStyle

Çerçeve Biçimi

0

Zemin rengiyle uyumlu, görülmez

1

Solid (Tam çerçeve)

2

Dash (Çizgi)

3

Dot (Nokta)

4

Dash dot (Çizgi, nokta)

5

Dash dot dot (Çizgi, nokta, nokta)

6

Inside solid (Şekil ile çerçeve kenarları çakışık )

Tablo 14.2: BorderStyle'in, çerçeve biçimlerine göre aldığı değerler

BorderWidth : Bu özellik Line, Shape kontrol elemanlarının çerçeve kalınlığını belirtir. 1 ile 8192 arasındaki değerleri alabilir. BorderStyle'in sadece solid ve inside solid biçimlerindeyken etkisi görülür.

FillColor : Şeklin iç boyama rengini belirler.

FillStyle : Şeklin içini boyamak için kullanılacak deseni belirler. Tablo 14.3'de boyama şekilleri verilmiştir.

FillStyle

Boyama şekli

0

Tam Dolu

1

Üzerinde bulunduğu nesnenin zemin rengi

2

Yatay çizgili

3

Dikey çizgili

4

Sola Eğik

5

Sağa Eğik

6

Kareli

7

Çapraz kareli

Tablo 14.3: Boyama şekillerine göre FillStyle'in aldığı değerler

14.10. LİNE KONTROL (Çizgi Kontrol Elemanı)

Bu kontrol elemanı form üzerine bir çizgi şeklinde alınır. Alınan bu çizgiyi yatay, dikey veya eğik bir biçimde göstermek, istenilen boyuta getirmek mümkündür. Bu kontrolün yerine Line(X1,Y1)-(X2,Y2) metodunu kullanmak bellek açısından daha faydalıdır. X1 ve Y1 noktaları çizgi kontrol elemanının başlangıç koordinatlarını, X2 ve Y2 ise bitiş koordinatlarını vermektedir. Şekil 14.19'da gördüğünüz gibi bu kontrol kullanılarak rasgele iki nokta arasında bir çizgi çizilmiştir.

Şekil 14.19

14.11. PİCTUREBOX (Resim kutusu)

Bu kontrol elemanı Bitmap, Icon, Metafile, Jpeg ve Gif gibi resimleri görüntülemek için kullanılır. Bu kontrolün bir özelliği de Frame kontrolü gibi diğer kontrolleri gruplayabilmesidir.

Properties

Picture : Bu özellik kontrol içinde görüntülenecek icon, metafile ve bitmap tipi resimleri görüntülemeye yarar.

Nesneye bu özellik kullanılarak resim yüklenmesi:

  1. LoadPicture ile dosyadan,

    Picture1.picture=LoadPicture("\windows\kur.bmp")

  2. Başka bir nesnenin Picture özelliğinden,

    Picture1.Picture=Picture2.Picture

  3. Clipboard' dan yapılabilir.

Picture1.Picture=Clipboard.Getdata()

Image : Bu özellik sadece okunabilir bir özelliktir. Ve picture kontrolü methods' lar kullanılarak yapılan yazım ve çizimleri temsil eder. Methods'lar kullanılarak yapılan yazım ve çizimlerin kaydedilebilmesi veya başka bir nesne içine alınabilmesi için bu özellik kullanılır. Bu özelliğin etkili olabilmesi için AutoReDraw özelliğinin True olması gerekir.

Picture1.Circle(0,0),150

Picture2.Picture=Picture1.Image

satırları ile Picture1 içine bir daire çizilmekte ve bu çizim Picture2 nesnesi içerisinde de gösterilmesi sağlanmaktadır (Picture1.AutoReDraw True olmalıdır).

AutoReDraw : Bu özelliğin aldığı True veya False değerleri ile nesnenin kendini otomatik olarak yenilemesi yada yenilememesi sağlanır. Bu özellik sayesinde arka plana düşmüş bir form yada üzeri kapatılmış bir nesnenin üzerinin açılması ile nesnenin kendisini yeniden çizdirmesi sağlanır. Picture kutusunda methods'lar kullanılarak yapılmış yazım ve çizimler varsa, PictureBox'un kendini yenileyebilmesi için bu özellik True olmalıdır. Aksi takdirde methods'lara yapılan işlemler doğru olarak görünmeyecektir.

ScaleLeft, ScaleTop : ScaleLeft ve ScaleTop özellikleri Left ve Top özelliklerinden farklıdır. Left ve Top nesnenin form içindeki koordinatlarını belirlerken ScaleLeft ve ScaleTop çizimin yapılacağı bölgenin koordinatlarını belirler.

ScaleHeight : Çizimin yapılacağı bölgenin genişliğini belirlerler. Nesne içine yapılacak çizimler bu koordinatlar dışına taşamaz.

CurrentX, CurrentY : Bu özellikler methods'lar kullanılarak yapılan çizim ve yazımlarda aktif pixelin koordinatlarını belirler.

Şekil 14.20'deki ekran görüntüsünü, form üzerine yerleştirdiğim resim kutusunun picture özelliğini kullanarak "c:\windows\kur.bmp" resim dosyasını çağırdıktan sonra aldım.

Şekil 14.20

 

14.12. LISTBOX (Listeleme kutusu)

Elemanları listelemek ve sıralamak gibi özellikler sunan genel amaçlı bir kontroldür. DriveListBox, DirectoryListBox, FileListBox gibi türevleri vardır.

Properties

ListCount : Bu özellik liste içindeki eleman sayısını verir.

ListIndex : Listedeki aktif elemanın liste içindeki numarasını verir veya listedeki aktif olacak elemanı belirler. Bu numara ilk eleman için 0, son eleman için (ListCount-1) dir.

List1.ListIndex=5 ' Listedeki 6. Elemanı seçer.

List : Liste içindeki index numaralı elemanın değerini öğrenmek veya değiştirmek için kullanılır.

EskiDeger=List1.List(1) ' Listeden 2. Elemanı al

List1.List(1)="Konya" ' Listedeki 2.Elemanı yeni değeri

Bu özellik, tasarım zamanında listeye eleman ilave etmek için de kullanılır. Properties penceresinden List özelliğinin üzerine gelerek aşağı doğru açılan listeye, listede bulunmasını istediğiniz elemanları, Şekil 14.21'de görüldüğü gibi girebilirsiniz. Elemanları girerken bir alt satıra geçmek için Enter yerine Ctrl+Enter tuşlarını kullanmanız gerekir.

Şekil 14.21

Text : Bu özellik liste içinde seçili olan elemanın içeriğini verir. Sadece okunabilir bir özelliktir.

MultiSelect : Bu özellik bir kutu içinde birden fazla elemanı seçme imkanı verir. İki değişik modu vardır.

  1. Birden fazla eleman seçimi yapılamaz.

  2. Mouse ile tıklanan her eleman seçilir veya seçilmişse seçilmişliği kaldırılır.

  3. Bu modda Shift veya Ctrl tuşu basılı tutularak birden fazla seçim yapılır.

SelCount, Selected (Index) : MultiSelect özelliği 0 olmayan listelerde birden fazla eleman seçilebileceği için, SelCount özelliği ile seçili eleman sayısı, Selected(Index) özelliği ile de index numaralı elemanın seçili olup, olmadığı öğrenilebilir.

Örnek olması için aşağıdaki program satırlarını verdim. Bu satırlarla List1 adlı liste kutusunda seçili elemanlar öğrenilebilir.

Dim i

For i=0 to List1.ListCount -1

İf List1.Selected(i) Then

Print List1.List(i) ;"elemanı seçili"

End if

Next

Sorted : Listenin alfabetik sıralı olmasını sağlar.

NewIndex : Listeye en son eklenen elemanın indexini verir.

ItemData(Index) : Index nolu elemana listede görülmeyecek bir numara verilmesini sağlar. Bu özellik kullanılarak listeye konulan elemana sıra numarası verilebilir.

Columns : Bu özellik ile liste kutusu birkaç kolon yapılabilir. Bu özelliğe aktarılan değer 0 ise liste kutusu tek sütundur ve listenin ekranda görülen kısmının dolmasıyla listeye dikey kaydırma çubuğu eklenir. Eğer 0 değilse, listenin genişliği verilen sayıda sütuna bölünür ve bir sütunun dolmasıyla ikinci sütuna geçilir. Listenin görülen kısmındaki sütunların dolmasıyla listeye yatay kaydırma çubuğu eklenir.

TopIndex : O anda ekranda görülen en üstteki elemanın indexidir. Bu özellik ile listenin o anda ekranda görülen kısmını öğrenebiliriz.

Style : Liste kutusu bir CheckBox dizisi gibi de kullanılabilir. Style özelliğine 1 değeri verildiğinde listedeki her bir eleman bir CheckBox gibi davranır. Yani kullanıcı listedeki elemanları işaretleyerek seçebilir.

 

14.13. DRİVE LİST BOX (Sürücü Listeleme Kutusu)

Sistemde bulunan sürücüleri listelemeye yarayan kontrol elemanıdır. Bu kontrol ile programın çalışması sırasında istenilen sürücü seçimi yapılır. Bu seçim sürücüye geçişi sağlamaz. Sürücüye geçiş chdrive komutu ile yapılması gerekir.

Properties

Drive : Bu özellik kullanılarak kontrolün gösterdiği aktif sürücü öğrenilebilir veya değiştirilebilir. Drive özelliğinin gösterdiği değer disket sürücüler için sürücü harfi ve : işareti iken, harddisk sürücülerde buna sürücü etiketi de dahildir. Yani A sürücüsü A: ile gösterilirken C sürücüsü C:[etiket] şeklinde gösterilir.

Şekil 14.22

Yukarıdaki (Şekil 14.22) şekilde form üzerine yerleştirilmiş bir Sürücü Liste kutusu görmektesiniz.

 

 

14.14. DİRECTORY LİST BOX (Dizin Listeleme Kutusu)

Sistemde bulunan sürücülerdeki dizinleri listelemeye yarayan bir kontrol elemanıdır. Bu kontrol elemanı kullanılarak Path özelliği ile belirlenmiş sürücüde bulunan dizinler seçilebilir. Bu seçme işlemi aktif dizinin değişmesine sebep olmaz bu işin ChDir komutuyla yapılması gerekir. Şekil 14.23'teki ekran görüntüsünde görüldüğü gibi form üzerine bir Directory List Box kontrolü yerleştirilmiştir. Bu kontrol sayesinde harddiskte bulunan dosyalar listelenmiştir.

Şekil 14.23

Properties

Path : Bu özellik kullanılarak kontrol ile seçilmiş olan dizin öğrenilebilir veya değiştirilebilir. Örnek olması için aşağıdaki program satırlarını verebiliriz.

Sub Dir1_Change()

File1.Path=Dir1.Path

ChDir Dir1.Path

End Sub

14.15. FİLE LİST BOX (Dosya Listeleme Kutusu)

Herhangi bir dizindeki dosyaları listelemeye yarayan bir kontrol elemanıdır. Bu kontrol elemanı vasıtasıyla Path özelliği ile belirlenmiş dizinde bulunan dosyalar gösterilir.

Şekil 14.24

Yukarıdaki şekilde görüldüğü gibi herhangi bir dizindeki dosyalar File List Box kontrolü vasıtasıyla listelemiştir.

Properties

FileName : Bu özellik ile seçili dosyanın ismi öğrenilebilir. Geri dönecek değer dosyanın adı ve uzantısıdır. Dosyanın yolu Path özelliği ile öğrenilebilir.

Archive, Hiden, Normal, ReadOnly, System : Bu özellikler kullanılarak Dosya listeleme kutusunda Arşiv, Saklı, Sadece okunur, Normal ve System özelliklerine sahip dosyaların görüntülenmesi veya görüntülenmemesi sağlanır. Bu özelliklerden herhangi birisine True değeri verildiğinde o özelliğe sahip dosyalar listelenir, False verildiğinde dosyalar listelenmez.

Path : Bu özellik ile listelenmek istenen sürücü ve dizin ismi belirlenir.

Pattern : Bu özellik ile listelenmek istenen dosyalar filtrelenir. Bu işlem bildiğimiz joker karakterlerle (?,*) yapılır. Örneğin yalnız EXE uzantılı dosyaları listelemek için;

File1.Pattern= " *.EXE " ataması yapılır.

Birden fazla tip belirlemek için ;

File1.Pattern= " *.EXE ; *.COM " şeklinde kullanılır.