A
Alex77777
при нажатии на крестик закрытия окна этот код работает
Private Sub MDIForm_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Dim kAs Integer
k = MsgBox("Вы хотите выйти из программы?", _
vbQuestion + vbOKCancel + vbDefaultButton2, "сообщение")
If k = vbOK Then
Dim z As Integer
z = MsgBox("Подтвердите выход", _
vbExclamation + vbYesNo + vbDefaultButton2, "сообщение")
If z = vbYes Then
Else
Cancel = 1
End If
Else
Cancel = 1
End If
End Sub
когда в строке меню выбираю соответствующую позицию "Exit" и пишу вот такой код
Dim kAs Integer
k = MsgBox("Вы хотите выйти из программы?", _
vbQuestion + vbOKCancel + vbDefaultButton2, "Системное сообщение")
If k = vbOK Then
Dim z As Integer
z = MsgBox("Подтвердите выход", _
vbExclamation + vbYesNo + vbDefaultButton2, "Системное сообщение")
If z = vbYes Then
Unload Me
End If
End If
о при нажатии позиции "Exit" появляется первое сообщение "Вы хотите выйти из программы?", далее при нажатии vbOK появляется сообщение "Подтвердите выход", потом когда нажимаю vbYes (должна выгрузиться форма, но этого не происходит) снова появляется сообщение "Вы хотите выйти из программы?" я опять нажимаю vbOK, затем опять появляется сообщение "Подтвердите выход", и только затем нажав снова vbYes форма выгружается.
т.е. у меня почему то каждое сообщение повторяется дважды, а мне нужно только по одному разу с последующим закрытием формы. получается, что Unload Me срабатывает только со второго раза.
коллеги по работе посоветовали использовать оператор GoTo, но с ним такая же "петрушка".
кто знает подскажите что у меня неправильно в коде.
Private Sub MDIForm_QueryUnload(Cancel As Integer, UnloadMode As Integer)
Dim kAs Integer
k = MsgBox("Вы хотите выйти из программы?", _
vbQuestion + vbOKCancel + vbDefaultButton2, "сообщение")
If k = vbOK Then
Dim z As Integer
z = MsgBox("Подтвердите выход", _
vbExclamation + vbYesNo + vbDefaultButton2, "сообщение")
If z = vbYes Then
Else
Cancel = 1
End If
Else
Cancel = 1
End If
End Sub
когда в строке меню выбираю соответствующую позицию "Exit" и пишу вот такой код
Dim kAs Integer
k = MsgBox("Вы хотите выйти из программы?", _
vbQuestion + vbOKCancel + vbDefaultButton2, "Системное сообщение")
If k = vbOK Then
Dim z As Integer
z = MsgBox("Подтвердите выход", _
vbExclamation + vbYesNo + vbDefaultButton2, "Системное сообщение")
If z = vbYes Then
Unload Me
End If
End If
о при нажатии позиции "Exit" появляется первое сообщение "Вы хотите выйти из программы?", далее при нажатии vbOK появляется сообщение "Подтвердите выход", потом когда нажимаю vbYes (должна выгрузиться форма, но этого не происходит) снова появляется сообщение "Вы хотите выйти из программы?" я опять нажимаю vbOK, затем опять появляется сообщение "Подтвердите выход", и только затем нажав снова vbYes форма выгружается.
т.е. у меня почему то каждое сообщение повторяется дважды, а мне нужно только по одному разу с последующим закрытием формы. получается, что Unload Me срабатывает только со второго раза.
коллеги по работе посоветовали использовать оператор GoTo, но с ним такая же "петрушка".
кто знает подскажите что у меня неправильно в коде.