Birazdan yeni web sitemize yönlendirileceksiniz...!!
 ----
Eğer yönlendirilmezseniz "Yeni web sitemize gitmek için buraya tıklayın..."


Visual Basic Dersleri

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
ad uzayı içinde bulunan Form sınıfından türetilmiş sınıflardır. Dolayısıyla yeni bir form oluşturmak için, istenen Form sınıfından bir nesne oluşturulması yeterlidir.
Dim yeniForm As New frmYeni
Yeni oluşturulan formların gösterilmesi, formun Show ve ShowDialog metotları ile yapılır.ShowDialog metodu, form gösterildikten sonra, kapanana kadar diğer formlara erişimi engeller. ShowDialog metodundan sonra yazılan kodlar, form kapandıktan sonra çalıştırılır.
Dim yeniForm As New frmYeni
yeniForm.ShowDialog()
' Bu kodlar yeniForm kapandıktan sonra çalıştırılır
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
Case "SATIŞ"
If parola.ToUpper <> "SATİS_PAROLA" Then

HataFormuYukle("Satış departmanı
parolası yanlış!")
Else
Dim satisDepartmani As New frmSatis
satisDepartmani.ShowDialog()
End If
Case "YÖNETİM"
If parola.ToUpper <> "YONETİM_PAROLA" Then
HataFormuYukle("Yönetim departmanı
parolası yanlış!")
Else
Dim yonetimDepartmani As New frmYonetim
yonetimDepartmani.ShowDialog()
End If
Case Else
HataFormuYukle(grup & " isminde bir grup
bulunamadı")
End Select
End Sub


' 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.
Bugün 10 ziyaretçikişi burdaydı!
Bu web sitesi ücretsiz olarak Bedava-Sitem.com ile oluşturulmuştur. Siz de kendi web sitenizi kurmak ister misiniz?
Ücretsiz kaydol