Unload Form?!..
Ситуация:
Есть форма, на ней кнопка выход. По клику выполняются разные действия(обработка) и форма выгружается..
НО пользователь так же может нажать на крестик - возникает необхоимость отслеживать событие терминэйт формы.. и давать ему выполнять функцию баттон_клик..
Умные люди догадались, что возникает проблема - при нажатии на кнопку операции выполняются дважды.. Операции->Анлод->Он_терминэйт->Операции
Как это обойти?!..
Самый тупой способ - завести какой-нибудь скрытый флажок и смотреть отмечен он или нет...
Где-то видел апишную функцию запрета крестика - киньте если у кого-нибудь есть...
И еще можно же по идеи как-то без запрета обойтись - есть ведь всякие КьюриКлоз и другая фигня...
Цитата:
Originally posted by koltaviy
Всем привет!.. Давно не заходил.. Тут чо-то столкнулся с вопросом:
Ситуация:
Есть форма, на ней кнопка выход. По клику выполняются разные действия(обработка) и форма выгружается..
НО пользователь так же может нажать на крестик - возникает необхоимость отслеживать событие терминэйт формы.. и давать ему выполнять функцию баттон_клик..
Умные люди догадались, что возникает проблема - при нажатии на кнопку операции выполняются дважды.. Операции->Анлод->Он_терминэйт->Операции
Как это обойти?!..
Самый тупой способ - завести какой-нибудь скрытый флажок и смотреть отмечен он или нет...
Где-то видел апишную функцию запрета крестика - киньте если у кого-нибудь есть...
И еще можно же по идеи как-то без запрета обойтись - есть ведь всякие КьюриКлоз и другая фигня...
Всем привет!.. Давно не заходил.. Тут чо-то столкнулся с вопросом:
Ситуация:
Есть форма, на ней кнопка выход. По клику выполняются разные действия(обработка) и форма выгружается..
НО пользователь так же может нажать на крестик - возникает необхоимость отслеживать событие терминэйт формы.. и давать ему выполнять функцию баттон_клик..
Умные люди догадались, что возникает проблема - при нажатии на кнопку операции выполняются дважды.. Операции->Анлод->Он_терминэйт->Операции
Как это обойти?!..
Самый тупой способ - завести какой-нибудь скрытый флажок и смотреть отмечен он или нет...
Где-то видел апишную функцию запрета крестика - киньте если у кого-нибудь есть...
И еще можно же по идеи как-то без запрета обойтись - есть ведь всякие КьюриКлоз и другая фигня...
Думаю, самое простое в Вашей ситуации - выполнять все необходимые операции "предзакрытия" в коде процедуры для события Terminate, а в коде процедуры для нажатия кнопки оставить только оператор вызова Unload. Вот пример:
[COLOR=darkblue]
Private Sub CommandButton1_Click()
Unload Me
End Sub
'--------
Private Sub UserForm_Terminate()
MsgBox "Terminate event"
End Sub
[/COLOR]
Если всё-таки захотите отключить реакцию формы на нажатие "крестика", то посмотрите материалы по этой ссылке:
http://forum.codenet.ru/showthread.php?threadid=22908
Thanks... :}
А QueryUnload НАХ?