Как открыть новую форму, но закрыть старую в VB

У меня есть добро пожаловать в мое приложение, когда оно загружается, но затем нужно, чтобы эта форма закрылась и форма входа была открыта при нажатии кнопки "Продолжить".

мой код:

    Me.Close()
    Dim Login As New Form
    Login.Show()

когда я нажимаю кнопку, она закрывает только форму приветствия, а затем завершает приложение. Если вы можете помочь спасибо! :)

8 ответов


вы можете установить свойства проекта, чтобы выбрать "когда последняя форма закрывается" в раскрывающемся списке режим выключения

обновление:-

меню"проект" - > свойства "YourApp"... Вкладка Приложения ->

найти : "режим отключения"

изменить с

"при закрытии формы запуска" -- > "при закрытии последней формы"


показать форму до конца.

Dim Login As New Form
Login.Show()
Me.Close()

есть режим отключения свойства проекта. Это управляет жизненным циклом приложения.

убедитесь, что вы указать "когда закрывается последняя форма"

тогда ваш код должен работать, как вы ожидаете.

происходит то, что у вас есть этот параметр установлен в shutdown "при закрытии формы запуска", так как Me.Close в форме запуска это завершает работу приложения, весь код после этой строки эффективно игнорируемый.


Если вы используете Me.Hide()


Если ваша форма приветствия не является вашей основной формой, вам просто нужно поместить свой Me.Close после Login.Show()

Dim Login As New Form
Login.Show()
Me.Close()

попробуйте это..

на вашей форме приветствия при закрытии:

Me.hide()
Dim Login As New Form
Login.Show()

в вашей форме входа в систему при загрузке события:

Private Sub Login_Load(sender As Object, e As EventArgs) Handles MyBase.Load

    WelcomeForm.Close()

End Sub

это попытается скрыть первую форму и загрузить вторую форму. И когда вторая форма будет полностью загружена, она попытается закрыть первую форму.

убедитесь, что на вкладке Приложения в свойствах проекта установлен параметр "при закрытии последней формы".


Если вы закрываете sub main form из приложения, ваше приложение будет закрыто. Однако можно закрыть и открыть другие формы, если они не являются основной формой. Может, ты просто спрячешь его.


вам просто нужно поставить Hide () вместо Close:)

Так, например, в проекте я делаю прямо сейчас...

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click // Button1.Click is your "continue" button
        Hide()
        LogInFrom.Show()
    End Sub