Birden Fazla Form Oluşturmak
isual basic ile birden fazla form oluşturmak konusunu inceleyelim. Birden fazla form oluşturarak formlar arasında işlem yapabiliriz.
Windows uygulamaları birden fazla Form nesnesinden oluştuğu için, projelere form eklemek her zaman gereklidir. Bir Windows projesine yeni bir form eklemek için aşağıdaki adımları izleyelim:
1. Solution Explorer panelinden projeyi sağ tıklayarak ya da Project menüsünden Add Windows Form komutunu seçin.
2. Açılan menüden Windows Form öğesinin seçili olduğunu kontrol edin ve bir isim vererek formu ekleyin.
Başlangıç formlarının ayarlanmasının yanı sıra, uygulamada bir formdan başka bir formun açılması ve ayarlanması sık karşılaşılan bir durumdur. Form nesneleri,
System.Windows.Forms |
Dim yeniForm As New frmYeni |
Dim yeniForm As New frmYeni yeniForm.ShowDialog() |
MsgBox("Form kapandı...") |
ShowDialog ile gösterilen formlar, hangi durum ile kapandıklarını belirten bir DialogResultsonucu döndürürler. Bu kullanım MsgBox hazır fonksiyonu ile aynıdır.
Dim frm As New frmSatis If frm.ShowDialog = DialogResult.Yes Then |
' Verileri kaydet
End If |
Formun hangi diyalog sonucu ile döneceğini, üzerindeki Button kontrollerininDialogResult özelliği ile belirlenir. Eğer düğmenin bu özelliği Yes olarak ayarlanmışsa, bu düğme tıklanıp form kapatıldığı zaman, DialogResult.Yes değerini döndürür. Windows uygulamalarının başlangıç nesnesi Sub Main olarak seçilebilir. Bu durumda, uyguluma yüklenirken herhangi bir form yerine Main yordamı aranır. Bu yordam ayrı bir modül içine yazılabilir, ancak bu modüldeki Main yordamı sonlandığı zaman uygulama da sonlanır. Dolayısıyla, bu yordamdan açılan formların ShowDialog metodu ile açılması gerekir. Örneğin, bir Windows uygulamasının kullanıcının girdiği verilere göre değişik formları
açması için, başlangıç nesnesinin Sub Main olarak ayarlanması gerekir. Bu yordamda, kullanıcının istediği form dinamik olarak yüklenir.
Module Giris Sub Main() Dim grup, parola As String grup = InputBox("Kullanıcı grubu:") parola = InputBox(grup & " grubuna giriş için parola girin:") |
' Grupların parolası kontrol edilir
' ve ilgili grubun formu açılır.
' Eğer parola veya grup ismi yanlış girilirse
' hata formu yüklenir.
Select Case grup.ToUpper HataFormuYukle("Satış departmanı |
' Hata formu, verilen parametredeki mesajı
' gösterecek şekilde ayarlanır ve yüklenir.
Sub HataFormuYukle(ByVal mesaj As String) Dim hataFormu As New frmHata hataFormu.lblHataMesaji.Text = mesaj hataFormu.ShowDialog() End Sub End Module |
Formların üzerlerindeki kontroller, form sınıflarının birer üyesi oldukları ve
Friend erişim seviyesinde tanımlandıkları için, aynı projeden ulaşılabilirler.
Böylece, aynı Windows projesi içinde açılan formlar açılmadan önce
kontrollerinin özellikleri değiştirilebilir. Örneğin, hata formu gösterilmeden önce,
üzerindeki Label kontrolünün Text özelliği ilgili hata mesajını gösterecek şekilde
ayarlanabilir.