powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как отменить закрытие формы ?
7 сообщений из 7, страница 1 из 1
Как отменить закрытие формы ?
    #32385437
Собственно, как можно изменить закрытие формы в Form_Close ?
...
Рейтинг: 0 / 0
Как отменить закрытие формы ?
    #32385483
Фотография Alexander G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Из хелпа
Разработчик, выбирающий, какое из двух событий, Открытие или Загрузка, использовать для запуска макроса или процедуры обработки события, должен учитывать, что событие Открытие можно отменить, а событие Загрузка - нет. Например, при динамическом построении источника записей для формы в процедуре обработки события формы Открытие возможна отмена открытия формы в случае, когда в источнике отсутствуют записи. Аналогично этому, допускается отмена события Выгрузка, но не допускается отмена события Открытие.
...
Рейтинг: 0 / 0
Как отменить закрытие формы ?
    #32385565
Allll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Событие Unload отслеживает любые попытки закрыть форму и при необходимости можно отменить закрывание.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
Private Sub Form_Unload(Cancel As Integer)
   If MsgBoxQuery_Quit = False Then ' спросить пользователя
      Cancel = True  ' если скажет Нет, то отменить закрывание
   Else
' а здесь можно вызвать программы,
' которые нужно выполнить при закрывании
   End If
End Sub
...
Рейтинг: 0 / 0
Как отменить закрытие формы ?
    #32385966
Спасибо, есть только одна проблема.
Когда нажимаю на крестик формы - вываливается сообщение "Выходить ?" , нажимаю "нет" - все нормально. Но у меня на форме есть еще одна кнопка btn_Exit. У неё в событии Click стоит
Код: plaintext
DoCmd.close, acForm, Me.name

Так вот - нажимаю на эту кнопку, диалог нормально вываливается, нажимаю "нет" и он говорит "Run Time Error. Прервано выполнение макрокоманды Close". Я понимаю что оно прервано, но сообщать-то об этом зачем ? Какое событие надо вызывать из кнопки, или по-другому как-нибудь можно решить эту проблему ?
...
Рейтинг: 0 / 0
Как отменить закрытие формы ?
    #32385972
Фотография Владимир Саныч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Это очень странно. Можно попытаться понять, почему это происходит. А можно поставить

On Error Resume Next
...
Рейтинг: 0 / 0
Как отменить закрытие формы ?
    #32385991
спасибо, так и поставил, хоть и понимаю что это очень нехорошо, но разбираться во всех странностях поведения Access сейчас времени нет

---------------------------------------
С уважением, Каримбаев Тимур
...
Рейтинг: 0 / 0
Как отменить закрытие формы ?
    #32386029
Allll
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
color=green]хоть и понимаю что это очень нехорошо
Отслеживание и блокирование ошибок - стандартный приём, которым пользуется САМ Microsoft.
Попробуйте поставить новую кнопку Выход с помощью Мастера и посмотрите, какой код он поставит на событие Click. Там будет On Error GoTo...
Вы просто модифицировали микрософтовский приём под свои нужды.

Код: plaintext
во всех странностях поведения Access

Ничего странного - всё логично.
Вы ведь действительно отменили команду закрывания формы!
А то, что появилась ошибка - так ведь закрывание может быть прервано и по другим причинам и вам об этом должно сообщаться.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Как отменить закрытие формы ?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]