Форма VB.net открывается самостоятельно - PullRequest
0 голосов
/ 29 мая 2011

У меня есть форма входа в систему, которая отправляет вас, если вход в систему правильный в главном меню ... в главном меню есть кнопки, ведущие к другим формам.при нажатии на кнопку он скрывает главное меню и показывает другую форму.но проблема в том, что когда главное меню скрывается и появляется другое, главное меню открывается самостоятельно, и каждый раз, когда вы закрываете его, оно открывается снова.это сводит меня с ума.Вот код: -

Public Class mainmenu

    Private Sub Button1_Click(ByVal sender As System.Object, _
      ByVal e As System.EventArgs) Handles Button1.Click
        Me.Hide()
        Maintenance.Show()
    End Sub

    Private Sub mainmenu_Load(ByVal sender As System.Object, _
      ByVal e As System.EventArgs) Handles MyBase.Load
        If Login.c1 <> 0 Then
            Me.memberbtn.Visible = True
        Else
            Me.memberbtn.Visible = False
        End If
    End Sub

    Private Sub memberbtn_Click(ByVal sender As System.Object, _
      ByVal e As System.EventArgs) Handles memberbtn.Click
        Me.Hide()
        Member.Show()
    End Sub
End Class

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

1 Ответ

0 голосов
/ 29 мая 2011

Вы отправили неправильный код.Вы должны были что-то сделать, чтобы меню снова стало видимым, когда пользователь закрывает форму.Это код, который вызывает проблему.

Давайте сделаем еще одну версию, у которой нет этой проблемы.Вам необходимо прослушать событие FormClosed, чтобы понять, что меню должно снова стать видимым.Напишите небольшой вспомогательный метод, который обеспечивает это:

Private Sub DisplayForm(ByVal frm As Form)
    AddHandler frm.FormClosed, AddressOf DisplayMenu
    frm.Show()
    Me.Hide()
End Sub

Private Sub DisplayMenu(ByVal sender As Object, ByVal e As EventArgs)
    Me.Show()
End Sub

Обработчик события нажатия кнопки теперь прост:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    DisplayForm(New Maintenance())
End Sub

Вы можете еще больше улучшить метод DisplayForm.Весьма вероятно, что вы захотите установить для свойства StartPosition формы значение вручную и установить его свойство Location так, чтобы формы отображались в согласованном месте на экране.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...