2016-03-22 25 views
-1

Görsel temel konusunda yeniyim. Oturum açma düğmesine bastığımda VB.NET'te yeni bir pencere açmak istiyorum. Ayrıca mevcut formu önce kapatmak istedim, böylece yeni bir form açacaktı.Yeni pencereler açılıyor

Private Sub btnLogIn_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnLogIn.Click 
    Dim username As String = tbUsername.Text 
    Dim password As String = tbPassword.Text 

    If username = "admin" And password = "admin" Then 
     MsgBox("Log In Successful!", MsgBoxStyle.Information, "Success") 
     Close() 
     Dim mainMenu As New MainMenu() 
     mainMenu.Show() 
    Else 
     MsgBox("Log In Failed!" + vbCr + "Wrong credentials!", MsgBoxStyle.Exclamation, "Failed") 
    End If 

End Sub 

Oturum açma düğmesine bastığımda, sonraki formu yaklaşık 0,10 saniye görüntüler ve daha sonra kapatır. Ayrıca mainMenu.ShowDialog()'u denedim, ancak aynı sonucu veriyor. Ne yapmalıyım?

+2

Değişim Projesi> Özellikler> Uygulama sekmesi> Kapatma modu. Biraz daha etrafına bak, bunun keşfedilebilir olması gerekiyordu. Anlamadığınız bir şey gördüğünüzde F1 tuşuna basın. –

cevap

0

Sorununuz, bir form içinde pencere formu değişkeninizi tanımlamaktır. Çöp toplayıcı kısa bir süre sonra pencerenizi siliyor ve böylece kapalı. Kendi yönteminizin dışında özel veya genel değişken olarak tanımlamaya çalışın ve onu içeride başlatın.