2013-11-01 2 views
0

привет, у меня есть приложение vb с двумя формами. С формой A я могу запустить форму B, а затем форма A - false. Если я нажму на красный «X» в правом углу, я хочу, чтобы форма B была закрыта, а форма A - истина.Как я могу переключаться между формами с помощью VB?

Как я могу это сделать?

ответ

4

Вы можете установить что-то вроде этого в FormB:

Private objFromForm As FormA 

Sub New(FromForm As FormA) 
    InitializeComponent() 
    objFromForm = FromForm 
End Sub 

Private Sub FormB_FormClosing(sender As Object, e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing 
    objFromForm.Visible = True 
End Sub 

В основном, когда FormA вызывает конструктор FormB, он передает ссылку на себя. Затем в событии FormB «FormClosing» вы можете использовать эту ссылку, чтобы сделать FormA видимым снова до закрытия FormB. Вот пример этого со стороны Forma, в с помощью кнопки, что делает новый экземпляр FormB видимого и передает ссылку на себя (Forma) в конструктор FormB:

Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click 
    Dim objNewForm As New FormB(Me) 
    objNewForm.Show() 
    Me.Visible = False 
End Sub 
3

В принципе вы можете сделать, как это ..

При вызове FormB образуют FormA

Me.Visible = False 
FormB.Showdialog 

В FormB FormClosing случае

FormA.Visible = True 
Смежные вопросы