Как закрыть форму MdiChild сразу после ее открытия? - PullRequest
0 голосов
/ 22 апреля 2019

Мы можем закрыть Mdiform с помощью Me.close (), написанного в элементе управления, подобном событию Button.
Можем ли мы закрыть форму сразу после ее открытия?

Согласно тому, что я знаю после открытия формыуказатель переходит к событию Form.Load.
Я пытался записать Me.close в Form.Load и Form.Activation, но

Я получил сообщение об ошибке, описывающее me.close, но CreateHandler не работает) событие.

Я делаю это, потому что я создал что-то вроде, скажем, Public переменная bool как Boolean = false, тогда форма не будет открыта.
Я могу поместить это перед инициализацией формы в родительском mdiи это работает для меня, но форма может быть инициализирована из разных точек.Как от MdiParent и от другого MdiChild тоже, и я должен поставить if bool = false then exit sub везде.Если я могу поместить это в форму, то я могу сохранить немного LOC.
Заранее спасибо

1 Ответ

0 голосов
/ 22 апреля 2019

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

Например, этот (псевдокод) может быть в родительской форме MDI:

Private Sub ShowMdiChildForm(etc etc)

' Variable "x" is your Boolean to determine whether or not to show the form.
If x = True Then
    Dim f as new MdiChildForm
    f.Show
End If

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