Bu yazı serisinde Visual Basic 6 ile ActiveX bileşen oluşturmayı açıklayacağım.
ActiveX nedir?
ActiveX bir teknoloji grubuna verilen isimdir. Bu grubu oluşturan teknolojiler, programcıların uygulamalarını daha hızlı şekilde geliştirebilmelerini, daha önce oluşturulmuş bileşenleri, tekrar kod yazmak zorunda kalmadan uygulamalarında kullanabilmelerini sağlamaktadır.
Visual Basic ile ActiveX bileşen oluşturma
Yapacağımız ActiveX bileşen, yandaki resimde olduğu gibi oklara tıklanarak
metin kutusundaki sayıyı arttıracak ya da azaltacak. Birçok programın ayar
penceresinde buna benzer şeylerden rastlamışsınızdır.
Visual Basic sürümlerini indirmek için https://winworldpc.com/product/microsoft-visual-bas/60
- Visual Basic 6'yı çalıştırın.
- Vb'yi çalıştırdığınızda New Project ekranıyla karşılaşacaksınız.
-
Bu pencerede ActiveX Control'ü tıklayıp Aç butonunu tıklayın
ya da çift tıklayın.
Eğer böyle bir pencere gelmezse menüden File / New project CTRL+N tıklayın.
-
Yeni projede form penceresi açılacak. Standart formlardan farklı olarak
kenarlık, başlık, simge durumuna küçült / büyüt / kapat düğmeleri yoktur. Bu
form ActiveX kontrol için çalışma(tasarım) alanıdır.
Bileşeni bir standart form'a eklediğinizde nasıl görüneceğini gösterir. Standart formlarda olduğu gibi üzerine Toolbox'dan bileşenler eklenebilir. - Formun sol üst köşesine yakın bir Textbox yerleştirin.
- Hemen sağına aynı yükseklikte VscrollBar yerleştirin.
- Formdaki TextBox'u tıklayıp seçili hale getirin.
- F4'e basıp Properties(özellikler) penceresinde Text özelliğinin yanındaki Text1 yazısını silin.
- Form üzerinde tıklayarak formu seçili hale getirin.
- Sağ alt köşede beliren küçük kareden tutarak formun boyutunu küçültün.
ActiveX kontrolümüzün temelini oluşturduk.
Gördüğünüz gibi hiç kod yazmadan, görsel tasarımla ve kolaylıkla bir ActiveX
kontrol oluşturduk.
Şimdi bu kontrolü test edelim.
ActiveX kontrolü test etme
- File menüsünden Add Project'i tıklayın.
- Açılan Add Project penceresinde Standart EXE'yi çift tıklayın.
- Bu işlem Project2 projesini ve projede Form1'i oluşturur.
- Şimdiye kadar neler yaptık aşağıdaki resme bakarak kontrol edin.
-
Aynı anda 2 proje üzerinde çalışıyoruz.
1.si Project1; ActiveX kontrol için,
2.si Project2; Standart form, test için.
-
Sol alt köşede daire içindeki Toolbox'da oluşan yeni
bileşen(component) az önce bizim oluşturduğumuz ActiveX kontrolü
simgeliyor.
Ama şu an kullanılamaz durumda. Çünkü tasarım penceresi açık. - Kullanabilmek için Project1 - UserControl1 (UserControl) penceresini kapatın.
- Toolbox üzerinde oluşan yeni ActiveX bileşeni denemek için üzerinde tıklayın ve Project2 içindeki Form1 üzerine yerleştirin.
Gördüğünüz gibi tek kontrolde 2 kontrol birden bulunuyor.
ActiveX kontrol
bunları birleştirerek yeni bir kontrol meydana getirdi.
Bu kontrolün
diğer kontroller gibi kendine has özellikleri(properties) ve olayları(events)
vardır.
- F4 tuşuyla özellikler penceresini açıp özelliklerini ayarlayabilirsiniz.
- Buraya kadar oluşturduklarımızı kaydedelim.
- File menüsünden Save Project Group'u tıklayın ve kaydedin.
Çalıştırma
- Aynı anda iki proje üzerinde çalıştığımız için başlangıç projemizi belirlemeliyiz.
- Project Group penceresinde Ctrl+R Project2 üzerinde sağ tıklayın açılan menüden Set as Start Up'ı tıklayın.
- Bu işlem Project2'nin başlangıç projesi olmasını sağlar.
- Visual Basic menüsünden Run / Start'ı tıklayın F5.
-
Çalışan Form1 üzerinde bizim oluşturduğumuz kontrol problemsiz bir şekilde
çalışıyor.
Yalnız herhangi bir kod girmediğimiz için aşağı ve yukarı okları işlevsizdir.
- Menüden Run / End ile proje çalışmasını durdurun.
Kod ekleme
- Ctrl+R'ye basın.
- Project1 altındaki User Controls altındaki UserControl1 i çift tıklayarak Project1 penceresini açın.
- Vscrolll kontrolünü çift tıklayarak Vscroll1_Change alt rutini için aşağıdaki kodu ekleyin.
Text1.Text = VScroll1.Value
- Bu arada Project2'deki Form1'e bakacak olursanız eklediğimiz kontrol üzerinde çizgiler göreceksiniz. Bunun manası; bu kontrol tasarım aşamasındadır ve şu an tasarımdaki değişiklikler buraya aksetmez. Tasarım aşamasından geçiş yapmak için Project1 - UserControl1 penceresinin kapatılması gerekir.
- F5' ile projeyi çalıştırın.
- Şimdi okları tıkladığımızda yanındaki kutu içindeki sayı değişecek.
-
Hemen fark etmişsinizdir. Bir anormallik var.
Aşağı oka bastığımızda sayı artıyor, yukarı okta azalıyor. Halbuki tersi olması gerekir.
Bunu düzeltelim. - UserControl1 penceresinde Vscroll1'i tıklayıp F4'e basın.
- Max özelliğine text kutusuna gelecek en büyük değeri,
- Min özelliğine ise en küçük değeri yazın.
- Form çalıştığında alması gereken değeri de Value özelliğine yazın. Negatif sayı da kullanabilirsiniz.
- UserControl1 formu üzerinde çift tıklayarak UserControl_Initialize alt rutinine aşağıdaki kodları ekleyin.
Private Sub UserControl_Initialize() EnB = VScroll1.Max EnK = VScroll1.Min VScroll1.Max = -EnK VScroll1.Min = -EnB VScroll1.Value = -VScroll1.Value End Sub
- VScroll1_Change kodlarını aşağıdaki kodlarla değiştirin
Private Sub VScroll1_Change() Text1.Text = -VScroll1.Value End Sub
- Terslik bu kodlar ile düzeltildi. Şimdi çalıştırın ve deneyin.
Proje dosyaları: Vb_ile_ActiveX_Olusturma_1.rar
Sonraki Bölüm: 2: Dijital Saat |
Hiç yorum yok:
Yorum Gönder