Form Nesnesi. Şekil 1. SDI Form. Şekil 2. MDI Form ve alt (Child) formlar



Benzer belgeler
7) Çoklu Formlar. Şekil7.1. Araç kutusundaki Add Form butonuna basarak projeye yeni bir form ekleyiniz.

Windows Nasıl Çalışır? Pencereler (window), Hareketler (event) ve Mesajlar (message)

İÇİNDEKİLER 1. BÖLÜM: VISUAL BASIC E İLK ADIM

Microsoft Visual Basic 6.0 sekmesine bir kere tıklanarak program açılır. Program ilk açılışta

Microsoft Visual Basic 6.0 sekmesine bir kere tıklanarak program açılır. Program ilk açılışta

HSancak Nesne Tabanlı Programlama I Ders Notları

Görsel Programlama (Visual Programming) 2.Hafta

Kontroller program ara birimi (user interface) oluşturmada kullanılan nesnelerdir.

Görsel Programlama (Visual Programming) 2.Hafta

UYGULAMALAR. İkinci liste kutusu (List 2) Birinci liste Kutusu (List 1) Metin Kutusu

7. BELGEYE RESİM EKLEME, YAZIM ve ÇİZİM ÖZELLİKLERİ

C# Form Uygulamaları. Nesne Tabanlı Programlama I (C#) Ders Notu. S.Ü.Akören A.R.E. Meslek Yüksekokulu C.ÖZCAN- F.SARAY

VISUAL BASIC 6.0. Modül: Tek bir dosyada toplanan ve programın herhangi bir yerinden çağırılabilen prosedürler ve tanımlamalar topluluğu.

'On Adet Tam Sayı Değer Alan Değ. Tanımlanıyor Dim x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, n As Integer Private Sub buton1_click() ' Şans Oyunları

YZM 2105 Nesneye Yönelik Programlama

Bu uygulama, MSGBOX fonksiyonun ve Form nesnesinin QueryUnload olayının kullanımı ile ilgili bir uygulamadır.

HSancak Nesne Tabanlı Programlama I Ders Notları

YZM 2105 Nesneye Yönelik Programlama

Pencereler Pencere Özellikleri

OÖ lçu mu Uygulaması

Uygulamalar 4 IsMissing Fonksiyonlar ve Alt Programlar Prosedür Parametreleri Public Function f(x,y,optional t, Optional k) End Function 1.

C# Programlama. Windows Forms Uygulamaları - 1. Prof. Dr. Ümit KOCABIÇAK SAKARYA ÜNİVERSİTESİ

INPUTBOX KULLANIMI. Komut Düğmesine uygulanan algoritma örneği

TEMEL BİLGİSAYAR. Ders Notları. Yrd. Doç. Dr. Seyit Okan KARA

Kod Kavramı Sub End Sub Olay (Event) Kavramı

MAKRO PROGRAMLAMA DERS NOTLARI

Visual Basic ilk açıldığında görülen New Project penceresi Visual Basic ile neler yapılabileceğinin bir özeti gibidir.

10 LU SAYISAL SİSTEMİ İLE 2 Lİ SAYISAL SİSTEMİ ARASINDA ÇEVİRİM UYGULAMASI

16. Kesit ve Cephe Aracı

3- DAHA ÇOK KONTROLLERLE ÇALIŞMAK

VISUAL BASIC 6.0 UYGULAMALARI

6) Menüler, Alt Prosedürler ve Alt Fonksiyonlar

Bu düğme tıklandığında karşınıza yandaki gibi bir diyalog kutusu daha gelecektir.

ALGORİTMA VEYA PROGRAMLAMA DAİR KAVRAMLAR

Her Select Case bloğu, mutlaka End Select ile bitmek zorundadır.

12 TBT / WEB TASARIM ve PROGRAMLAMA ( Not 3 )

Yukardaki gibi sonsuz döngülü programlara Ctrl+Break tuş takımı ile müdahale edilmesi gerekir, aksi halde program sonsuz döngüye girer.

OPTION BUTTON ve ELSEIF UYGULAMALARI

Şekil 2.1. Bu bölümde ASP.Net platformumuzu açtığımızda Toolbox penceresindeki Standart bölümündeki kontrollerden bahsedeceğiz.(şekil 2.2) Şekil 2.

MICROSOFT VISUAL BASIC

MAT214 BİLGİSAYAR PROGRAMLAMA II DERSİ Ders 12: Grafik Kullanıcı Arayüzü (Graphical User Interface-GUI)

BOOTLOADER MANUAL DOCUMENT

ÇANKRI KARATEKİN ÜNİVERSİTESİ

VISUAL BASIC. Not1: Ücretsiz olarak indirilip kurulabildiğinden, bundan sonraki anlatımlar Visual Basic Express Edition esas alınarak yapılacaktır.

ASP.NET M U S T A F A K I L I Ç M C S E, M C D B A

SAÜ BİLGİSAYAR VE BİLİŞİM BİLİMLERİ FAKÜLTESİ ORTAK BİLGİSAYAR DERSLERİ KOORDİNATÖRLÜĞÜ WİNDOWS 7 BÖLÜM SORULARI

ÖĞRENME FAALİYETİ 1 ÖĞRENME FAALİYETİ 1 1. FORMLAR

Hukuk Parter Tema Düzenleme

BĐLGĐSAYARDAN BAĞIMSIZ YAZDIRMA ĐŞLEMĐ

GÜZ YY. - MKT103 - GÖRSEL PROGRAMLAMA DERSİ - ARA SINAVI

WEB FORMLARI. Öğr. Gör. Emine TUNÇEL Kırklareli Üniversitesi Pınarhisar Meslek Yüksekokulu

B düğüm noktasında aşağıya doğru 1'' lik yer değiştirme nedeniyle oluşacak mesnet reaksiyonlarını hesaplayınız.

Byte (Tamsayı) 1 0 ile 255 arasında 10 sayısı

BÖLÜM 5 5. TABLO OLUŞTURMAK

MICROSOFT POWERPOINT 2007 DERS NOTLARI

BÖLÜM 8 B- SUNU PROGRAMI 1. MICROSOFT POWERPOINT NEDİR? 2. POWERPOINT PROGRAMININ BAŞLATILMASI

Excel Nedir? Microsoft Excell. Excel de Çalışma sayfası-tablo

ÇANKRI KARATEKİN ÜNİVERSİTESİ

4.1. Grafik Sihirbazını kullanarak grafik oluşturma

T.C. MİLLÎ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) ENDÜSTRİYEL OTOMASYON TEKNOLOJİLERİ

SAB 103 TEMEL BİLGİSAYAR KULLANIMI

New Project. User guide

.. ROBOTİK VE KODLAMA EĞİTİMİ ÇERÇEVESİNDE ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ DERSİ ÜNİTELENDİRİLMİŞ YILLIK DERS PLANI

2-1 Visual BASİC 6.0 PROJE TASARIM PENCERESİNE BAKIŞ. Visual BASIC 6.0 açıldığı zaman karşınıza Şekil 2.1'de görülen ekran görüntüsü gelecektir.

Mühendislik Fakültesi Elektrik-Elektronik Mühendisliği C Programlama 1. Bölüm C# Programlamaya Giriş

HSancak Nesne Tabanlı Programlama I Ders Notları

ASP.NET ile Bir Web Sitesi Oluşturma

MİCROSOFT WORD PROGRAMI ÇALIŞMA KAĞIDI

Metin İşlemleri, Semboller


TEMEL SUNUM İŞLEMLERİ SUNUMA SES, VIDEO EKLEME SUNUM TASARIMI ANİMASYONLAR SLAYT GEÇİŞİ KÖPRÜ KAYDETME SUNUM TASARIM TEKNİKLERİ ETKİNLİKLER

2. Belgeye Metin Ekleme

Karabük Üniversitesi, Mühendislik Fakültesi... WEB TEKNOLOJİLERİ


DENEME SINAVI CEVAP ANAHTARI

Metin Tabanlı İçerik Oluşturma Araçları

EĞİTİM-ÖĞRETİM YILI BİLİŞİM TEKNOLOJİLERİ VE YAZILIM DERSİ 6. SINIF 2. DÖNEM 2. SINAV ÇALIŞMA NOTLARI

HSancak Nesne Tabanlı Programlama I Ders Notları

Fatura Dinamik Kodlama İyileştirmeleri

Internet Programming II. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Q-Biz İş Zekası 5.1. Versiyon Yenilikleri

Visual Studio 2010 veya 2013, Sharp Develop 3.2 programlarını kurabilirsiniz.

Android Ders Notları

MİCROSOFT POWER POINT 2007 DERS NOTLARI GİRİŞ SEKMESİ

DELPHI DERS NOTLARI. Delphi yi açtığınızda karşınıza ana form, component palet ve object inspector (özellikler ve olaylar penceresi) gelir.

Kets DocPlace LOGO Entegrasyonu


POWERPOINT 2010 KULLANIMI

MESLEKİ BİLGİSAYAR DERSİ SORU BANKASI

Bu gün dersimizde değişik web kontrollerinin kullanımını gösteren birkaç web sitesi hazırlayacağız. Önce Visual Studio 2005 i açalım.

Diziler İndisli Değişkenler

Yazılım Nedir? 2. Yazılımın Tarihçesi 3. Yazılım Grupları 4 Sistem Yazılımları 4 Kullanıcı Yazılımları 5. Yazılımın Önemi 6

Toolbox Kullanımı ve Elemanları

JavaScript Örnekleri PDF

INTERNET BAĞLANTISININ KURULMASI İÇİN GEREKLİ YÖNLENDİRİCİ AYARLARI

İşletim Sistemi Nedir?

Genel Kullanılış 1: [değişken ismi] = [değişken ismi] [işlem] [sayı veya string ifade veya değişken]

T.C. MİLLİ EĞİTİM BAKANLIĞI MEGEP (MESLEKİ EĞİTİM VE ÖĞRETİM SİSTEMİNİN GÜÇLENDİRİLMESİ PROJESİ) BİLİŞİM TEKNOLOJİLERİ NESNE TABANLI PROGRAMLAMA - 2

Visual Basic Programlama Diline Giriş

İçindekiler Tablosu Talep Destek Yönetim Sistemi Programı...3

Transkript:

Form Nesnesi Form nesnesi, uygulamaların kullanıcı ara yüzünü oluşturulmasına zemin hazırlayan nesnedir. Form nesnesi MDI (Multiple Documents Interface) ve SDI (Single Document Interface) olmak üzere iki tipe sahiptir. Uygulamada SDI form kullanılıyorsa ve Şekil 1 de gösterildiği gibi birden fazla form yer alıyorsa, bir birlerinden bağımsızdırlar. MDI form ise Şekil 2 de gösterildiği gibi alt (Child) formları bir arada tutan bir ana formdur. Şekil 1. SDI Form Windows işletim sisteminde yer alan NOTEPAD programı, SDI tipte bir form yapısına sahiptir, yeni bir doküman açılmak istendiğinde açık olan doküman kapatılmalıdır. İstatistik Paketlerinden bir tanesi olan Minitab uygulaması ise bir MDI form yapısındadır. Uygulama çalıştırıldığında birden fazla doküman açılabilir ve üzerlerinde çalışılabilir. Şekil 2. MDI Form ve alt (Child) formlar

Form nesnesinin de sahip olduğu özellikler, metotlar ve olaylar vardır. Sahip olduğu bazı özellikler Height, Width, Name dir. Form nesnesinin tüm özellikleri Tablo 1 de verilmiştir. Sahip olduğu metotlara Hide, Show, Move örnek olarak verilebilir, form nesnesinin tüm metotları Tablo 2 da verilmiştir. Nesneye ait olaylardan bazıları ise Load, QueryUnLoad, UnLoad olaylarıdır. Nesneye ait tüm olaylar Tablo 3 de verilmiştir. Şekil 3. Notepad Uygulaması (SDI) Uygulama iki kez çalıştırılmıştır. Şekil 4. Minitab Uygulaması (MDI) Bir tane MDI Form ve Session, Worksheet 1 ve Project başlıklarına sahip üç tane alt (Child) form. Not: Bazı açıklamalarda, [ ] kullanılmıştır, örneğin; Private Sub nesne_activate() [Private Sub Form_Activate()] Kod bloğu Bu durumda, ilk verilen ifade özellik, metot veya olayın nesneler için genel kullanım şeklini, parantez içinde verilen ise bahsedilen nesne veya nesneler için kullanım şeklini ifade etmektedir. Örnekte Activate olayının bu olayı kullanabilen nesneler için genel kullanım şeklini, parantez içinde ise Activate olayının Form nesne için kullanım şeklini ifade eder. Form Özellikleri Form nesne özellikleri, nesnenin görünümü, konumu, rengi vb. özellikleri düzenler. Form özelliklerinin çoğu ya çalışma anında ya da tasarım anında Properties penceresi aracılığı ile düzenlenir. Bahsedilen özelliklerden bazıları diğer nesneler içinde geçerlidir. Tablo 1. Form nesnesinin özellikleri ActiveControl FillStyle Moveable Appearance Font Name AutoRedraw FontBold ScaleHeight BackColor FontItalic ScaleLeft

BorderStyle FontName ScaleMode Caption FontSize ScaleTop ClipControls FontStrikethru ScaleWidth Controls FontTransparent ShowInTaskBar CurrentX FontUnderline StartUpPosition CurrentY ForeColor Tag DrawMode HDC Top DrawStyle Height Visible DrawWidth HWnd Width Enabled KeyPreview WindowState FillColor Left Caption Form veya MDI Form nesnesinin başlık çubuğunda gösterilecek metni belirleyen özelliktir. Height Özelliği Height (yükseklik) özelliği nesnelerin yüksekliğini döndürür veya ayarlar. Bu özellik, Form nesnesinde, nesnenin en dış noktasından (formun kenarlıkları ve başlık çubuğu da dahil) ölçülür. Width Özelliği Width (genişlik) özelliği nesnelerin genişliğini döndürür veya ayarlar. Bu özellik, Form nesnesi için aynı Height özelliğinde olduğu gibidir. Name Özelliği Form nesnesinin, sadece tasarım anında değer alabilen bir özelliğidir. Uygulamanın tasarlanması aşamasında nesnelerin isimlendirilmesi için kullanılan, her birine özel olarak verilen, ayırt edici bir özelliktir. ScaleHeight ve ScaleWidth Özellikleri Bu iki özellik sırasıyla ilgili nesnenin kenarlıkları ve varsa başlık çubuğu katılmadan sadece boyutlandırılabilen iç kısmının yükseklik ve genişlik değerlerini döndürür veya ayarlar. Bu özellikler sadece Form, MDI Form ve Picturebox nesneleri için geçerlidir. Şekil 5. Height, Width, ScaleHeight ve ScaleWidth WindowState Özelliği Form nesnesinin bu özelliği, nesnenin o anki görünüm durumunu belirten değeri döndürür veya değeri kabul eder. Bu özellik aşağıdaki değerleri döndürür veya kabul eder:

Sabit Değer Tanım VbNormal 0 (Varsayılan) Normal VbMinimized 1 Minimize (simge durumuna küçültülmüş) VbMaximized 2 Maksimize (maksimum boyuta büyütülmüş) Örneğin Form1 nesnesinin görünümünün, bilgisayar ekranının tamamını kaplaması istendiğinde: Form1.WindowState = VbMaximized veya Form1.WindowState = 2 Form Nesnesi Metotları Form nesnesinin metotları form üzerinde belli işlemlerin yapılmasını sağlar. Örneğin, birden fazla form nesnesine sahip bir uygulamada, iki formun aktive edilmesi istendiğinde (odaklanma), ilgili nesnenin SetFocus metodundan yararlanılır. Bahsedilen metotlardan bazıları form nesnesi dışındaki nesneler içinde geçerlidir. Tablo 2. Form nesnesinin metotları Cls SetScale DrawCircle ScaleX DrawLine ScaleY Hide SetFocus Move Show Point TextHeight PointSet TextWidth Refresh ZOrder Hide Metodu Form nesnesinin gizlenmesini sağlayan metottur. Metot aracılığı ile görüntüden kaldırılan form nesnesinin kontrollerine kullanıcı erişim sağlanamaz. Nesnenin Visible özelliği ile aynı işlemi gerçekleştirir. Hide metodu form nesnesinin sadece gizlenmesini sağlar, ancak hafızadan silmez. Form1.Hide (Form1.Visible = False aynı işlemi gerçekleştirir.) SetFocus Metodu Form nesnesinin bu metodu, birden fazla form olması durumunda, istenilen bir tanesine odaklanılmasını sağlar. Form1.SetFocus Show Metodu Form nesnesinin gösterilmesini sağlar. Show metodunun genel kullanımı; Form1.Show (Form1.Visible = True aynı işlemi gerçekleştirir.) Show metodu Style eklemesi ile iki farklı şekilde uygulanabilir: vbmodal (1) ile kullanılırsa form nesnesi gösterildikten sonra uygulama içinde devam eden kodlar, modal olarak gösterilen form Hide metodu ile gizlenene veya UnLoad deyimi ile hafızadan silinene kadar

çalıştırılmaz ve vbmodeless (0) ile yüklendiğinde devam eden kodlar çalıştırılmaya devam eder. Form1.Show vbmodal Form1.Show 0 Modal Gösterme Modeless Gösterme Form Nesnesi Olayları Nesnelere ait olaylar, o nesneler üzerinde yapılan bazı hareketler sonucunda ortaya çıkan önceden tanımlı olaylardır, örneğin, fare butonlarından bir tanesini tıklamak, bir seçeneği seçmek veya bir nesne üzerinde işaretçinin gezdirilmesi gibi. Form nesnesine ait olaylarda mevcuttur. Bunlardan bazıları form nesnesinin aktive edilmesi (etkinleştirilmesi), form nesnesinin tıklanması veya form nesnesinin kapatılması gibi olaylardır. Tablo 3. Form nesnesinin olayları Activate LostFocus Click MouseDown DblClick MouseMove Deactivate MouseUp GotFocus Paint KeyDown QueryUnload KeyPress Resize KeyUp Terminate Load Activate Olayı Form nesnesinin etkinleştirme (Activate) olayı, nesnenin kullanıcı etkisiyle (tıklanması) veya Show veya SetFocus metotları aracılığı ile gerçekleşir. Bu olayın gerçekleşebilmesi için form nesnesi görünür (.Visible = True) olmalıdır. Bu olayın tersi ise etkinleştirmeme (Deactivate) olayıdır. Şekil 6 da Form2 etkin, Form1 ise etkin olmayan durumdadır. Genel yapısı; şeklindedir. Private Sub nesne_activate() [Private Sub Form_Activate()] Kod bloğu

Şekil 6. Active Deactive Olayı Click Olayı Form nesne üzerinde herhangi bir yere fare ile tıklandığında, Click olayı meydana gelir. Yapısı; şeklindedir. Private Sub nesne_click() [Private Sub Form_Click()] Kod bloğu Load Olayı Load olayı bir form hafızaya yüklendiğinde meydana gelir. Bu olay genellikle form yüklendiğinde, formun ilk kullanıma hazırlanması için gerekli kodlamaları içerir. Örneğin, liste kutularına (ListBox) öğelerin atanması veya formdaki metin kutularının (TextBox) içeriğinin temizlenmesi veya belli değerlerin göstermesinin sağlanması gibi. Kullanımı; Private Sub Form_Load() [Private Sub MDIForm_Load()] Kod bloğu KeyPress Olayı KeyPress olayı klavyeden bir tuşa basıldığında meydana gelen olaydır. Bu olay gerçekleştiğinde basılan tuşun ANSI kodunu (ASCII Karakter Kodu), KeyAscii değişkeni (veya başka bir değişken aracılığı ile) döndürür. Örneğin form nesnesi etkin iken ENTER tuşuna basıldığında, KeyPress olayı gerçekleşmiş olacaktır ve döndürülen ANSI değeri 13 olacaktır. Genel yapısı; Private Sub nesne_keypress(keyascii As Integer) [Private Sub Form_KeyPress(KeyAscii As Integer)] Kod bloğu

şeklindedir. QueryUnload Olayı Bu olay bir formun kapanmasından önce oluşan bir olaydır. Bir SDI Form da form kapanmasından önce, MDI formda ise önce ana form olan MDI form, daha sonra ise alt (Child) formlar için meydana gelir. Eğer kapanma olayından vazgeçilmezse, formlar kapanır. MDI formlarda ise önce alt formlar sonra alt formlar kapanır. Bu olay iki değişkene ihtiyaç duyar ve kapanma nedenini temsil eden bir değer döndürür. Kullanımı; Private Sub Form_QueryUnload(cancel As Integer, unloadmode as integer) [Private Sub MDIForm_QueryUnload(cancel As Integer, unloadmode as integer)] Kod bloğu şeklindedir. Tablo 4. QueryUnload olayının değişkenleri Değişken Açıklama Cancel Tam sayı değişkendir. Bu değişkene 0 dan farklı herhangi bir değer atandığında hafıza yüklü olan tüm formların QueryUnload olayını durdurur ve uygulamanın kapanmasını engeller. Unloadmode QueryUnload olayının nedenini gösteren değer veya sabittir. Tablo 5. UnloadMode değişkeninin aldığı sabit ve temsil değerleri Sabit Değer Açıklama vbformcontrolmenu 0 Kullanıcı, formdaki kontrol menüsünde yer alan Close (Pencere Kapat Butonu) komutunu seçti. vbformcode 1 Kod aracılığı ile UnLoad deyimi tetiklendi. vbappwindow 2 Aktif Windows işletim sistemi oturumu sona erdiriliyor. vbtaskmanager 3 Windows işletim sisteminin Task Manager ı (Görev Yöneticisi) uygulamayı kapatıyor. vbformmdiform 4 MDI formu kapatıldığı için MDI alt formu kapatılıyor. vbfornowner 5 Form sahibi kapatıldığı için form kapatılıyor. Load Deyimi Load deyimi form nesnesini hafızaya yükler. Kullanımı Load Form1 şeklindedir. Show metodundan farklı olarak, form özelliklerini ve üzerinde taşıdığı nesnelerin özelliklerini ilk değerlerine ayarlar. UnLoad Deyimi Unload deyimi form nesnesini hafızadan siler. Kullanımı; şeklindedir. UnLoad Form1

MDI (Multi Documents Interface) Formlar MDI arabirimi tek bir MDI form ve içinde yer alan çok sayıda alt formdan (Child) oluşur. Ana forma parent (ana) form denir. Ana form için çok sayıda alt form açılabilir. Bir bakıma MDI Form alt formların taşıyıcısı konumundadır. MDI form, yapısı gereği, bazı özel kontrol nesneleri haricinde, metin kutusu, buton gibi kontrol nesnelerini taşıyamaz. Bu nedenle de, veri girişi veya gösterimi gibi rutin işlemler için kullanılamazlar. Genellikle menü çubuğu aracılığı ile yönetilirler. Bir MDI form içinde yer alan alt formlar simgeleştirildiklerinde MDI form içinde, MDI form simgeleştirildiğinde ise işletim sisteminin kontrol öğesinde yer alır. Bir Visual Basic projesinde sadece tek bir MDI form yer alabilir. Ancak ana form için istenen sayıda alt form yer alabilir. MDI forma alt formların eklenmesi, projeye eklenen bir SDI formun MDIChild özelliğinin True olarak ayarlanması yoluyla olur. Şekil 7. MDI Form Tasarım Anı

Şekil 8. MDI Child Form Tasarım Anı Çalışma anında MDI özellikleri Bütün alt formlar MDI formun çalışma alanında kullanılır. Bu nedenle, alt formların hareketleri, MDI form alanı ile kısıtlıdır. Şekil 9. MDI Form ve Child Formları Bir alt form simgeleştirildiğinde MDI form içinde, MDI form simgeleştirildiğinde ise işletim sisteminin görev çubuğunda gösterilir. MDI formun simgeleşmesi veya tekrar açılması durumunda alt formlar eski durumlarında (simge ya da normal büyüklükte) gösterilirler.

Şekil 10. MDI Child Formlar simge durumunda Bir alt form ekranı kapladığında, Caption özelliğinin taşıdığı bilgi MDI formun Başlık kısmında gösterilir. Şekil 11. Form2 Child Form Maksimum boyutlandırılma AutoShowChildren özelliği ile alt formlar yüklendirildiklerinde otomatik olarak gösterilirler ya da gösterilmezler. Bu durum AutoShowChildren özelliği True veya False olarak ayarlanması ile gerçekleşir. Aktif alt form menü çubuğuna sahip ise, bu menü MDI formun menü çubuğu olarak gösterilir.

Şekil 12. Menü çubuğuna sahip Child Formlar Tasarım anı a) Form1 Child Aktif Çalışma anı b) Form2 Child Aktif Çalışma anı Şekil 13. Menu çubuğuna sahip child formlar Alt Formların Kullanımı Bir MDI uygulamanın tasarımında Child formların yönetimi önemlidir. Child formların yüklenmesi, kaldırılması ve bu formlar arasında geçiş en önemli işlemlerdendir. Bir Child form yüklendiği zaman, bağlı olduğu MDI form (ana formu) otomatik olarak yüklenir. Buna karşın bir MDI yüklendiğinde child formları otomatik olarak yüklenip gösterilmez. AutoShowChildren özelliği ile formların gizli olarak yüklenmesi sağlanır ancak formları göstermek için Show metodu kullanılır. Formların Büyüklüğü ve Konumu Bir MDI child form ilk açıldığındaki boyutu MDI ana formun büyüklüğüne göre değişir. Bir MDI child formun boyutları ve konumu değiştirilebilir. Bu işlem için BorderStyle özdelliği 2 Sizable olarak ayarlanmış olmalıdır.

Şekil 14. Child Form BorderStye özelliği MDI Form nesnesinin bazı özellik ve olayları ActiveForm Özelliği SDI form nesnesi kullanıldığında aktif pencere bilgisini, eğer MDI form nesnesi kullanılıyorsa aktif alt form (child) bilgisi döndürülür. MDIForm1.ActiveForm[.Name;.Text1.Text; ] WindowState Özelliği WindowState özelliği, SDI formlarda olduğu gibi çalışmaktadır. Menü Hazırlama Uygulamalarda MDI form ve Child formlar için ayrı ayrı menu çubukları yaratılabilir. MDI üzerinde komut düğmesi gibi kontroller kullanılmadığı için işlemler genellikle menü çubuğu aracılıyla yapılır. Aktifleşen bir alt form eğer bir menü çubuğuna sahipse o menü MDI formun çubuğu haline gelir. Böylece MDI form taşıyıcılık görevinin yanı sıra açılan alt formun işlemlerinin de yapılmasını sağlar. Her formun farklı işlemler içereceği düşünüldüğünde bu olanak programlar için çok yararlıdır. Window (Pencere) Menüsü Yaratmak MDI uygulamaların birçoğunda Window (Pencere) menüsü vardır. Window menüsü MDI formlar arasında geçiş yapmaktır. Bunun yanı sıra bir MDI uygulamada bulunan Tile (Döşe) ve Cascade (Basamakla) işlemleri vardır. Visual Basic te Window menüsü yaratmak için menü editorü ve pencere işlemleri içinde belli metotlar kullanılır.

Arrange Metodu MDI form içindeki formları (pencereleri) ve simgeleri düzenler. Nesne.Arrange pencere_düzenleme Nesne bilgisi MDI formu gösterir. Düzenleme bilgisi pencerelerin nasıl düzenleneceğini gösterir. Düzenleme seçenekleri Sabit Değer Açıklama vbcascade 0 Simge durumunda olmayan bütün Child pencereleri basamaklı biçimde vbtilehorizontal 1 Simge durumunda olmayan bütün Child pencereleri yatay olara döşer. vbtilevertical 2 Simge durumunda olmayan bütün Child pencereleri dikey olara döşer. vbarrangelcons 3 Simge durumundaki formları döşer. a) Pencere Menüsü Basamaklama b) Pencere Menüsü Yatay Döşeme c) Pencere Menüsü Dikey Döşeme d) Pencere Menüsü Simgeleri Düzenleme Şekil 15. Alt formların (Child) düzenlenmesi

Şekil 16. Pencere Menüsü ve Alt Pencereler arasında geçişler Menüleri oluşturmak için kullanılan menü editörü Visual Basic derleyicisinin Tools (Araçlar) menüsünde yer almaktadır. Bu menü yardımıyla formların menüleri oluşturulur ve düzenlenir. Şekil 16 da Metin Editörüm uygulaması için hazırlanan menü öğeleri ve çeşitli özellikleri yer almaktadır. Menü öğeleri Caption ve Name olmak üzere iki önemli özelliğe sahiptir. Diğer nesnelerde olduğu gibi menü öğelerinin ve tıklandıklarında işletecekleri yordamların ayırt edilebilmesi için kullanılan Name özelliği ve diğeri ise menü öğesi hakkında kısa bilgi vermek amacıyla kullanılan Caption özelliğidir. Private Sub myeni_click() Private Sub myatay_click() MDIForm1.Arrange 1 Private Sub mbasamak_click() MDIForm1.Arrange 0 Şekil 17. Menü editörü Metin Editörüm uygulamasının menü öğeleri ve bazı menü yordamları