Событие ToggleButton.Exit (Access)

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

Синтаксис

expression. Выход (отмена)

Выражение Переменная, представляющая объект ToggleButton .

Параметры

Имя Обязательный или необязательный Тип данных Описание
Отмена Обязательный Integer Установите значение True , чтобы отменить событие.

Замечания

Это событие не применяется к флажкам, кнопкам параметров или переключателям в группе параметров. Он применяется только к самой группе параметров.

Чтобы выполнить макрос или процедуру события при возникновении этого события, задайте для свойства OnExit имя макроса или [Процедура события].

Так как событие Ввод возникает до перемещения фокуса к определенному элементу управления, для отображения инструкций можно использовать макрос или процедуру события Enter. Например, можно использовать макрос или процедуру события, чтобы отобразить небольшую форму или окно сообщения, определяющие тип данных, которые обычно содержатся в элементе управления, или дать инструкции по использованию элемента управления .

Событие Exit возникает перед событием LostFocus .

В отличие от события LostFocus , событие Exit не возникает, когда форма теряет фокус. Например, предположим, что вы установите флажок в форме, а затем щелкните отчет. При установке флажка возникают события ВВОД и GotFocus . При щелчке отчета возникает только событие LostFocus . Событие Exit не возникает (так как фокус перемещается в другое окно). Если снова установить флажок на форме, чтобы вывести ее на передний план, возникает событие GotFocus , но не событие ВВОД (так как элемент управления был фокусом, когда форма была последней активной). Событие Exit возникает только при щелчке другого элемента управления в форме.

При перемещении фокуса на элемент управления в форме, а у этого элемента управления нет фокуса на этой форме, события Exit и LostFocus для элемента управления, который имеет фокус на форме, происходят до событий ВВОД и GotFocus для элемента управления, в который вы перемещены.

Если вы используете мышь для перемещения фокуса с элемента управления в основной форме в элемент управления в подформе этой формы (элемент управления, который еще не имеет фокуса на подчиненную форму), возникают следующие события:

  • Выход (для элемента управления в основной форме)
  • LostFocus (для элемента управления в основной форме)
  • Введите (для элемента управления подчиненной формы)
  • Выход (для элемента управления в подчиненной форме, в которой был фокус)
  • LostFocus (для элемента управления в подчиненной форме, на которой был фокус)
  • Введите (для элемента управления в подчиненной форме, в которую переместился фокус)
  • GotFocus (для элемента управления в подчиненной форме, в которую переместился фокус)

Если элемент управления, к которому вы переходите в подчиненную форму, ранее был фокусирован, ни его событие ВВОД , ни событие GotFocus не возникает, но событие ВВОД для элемента управления подчиненной формы не возникает. При перемещении фокуса с элемента управления на подчиненную форму на элемент управления в основной форме события Exit и LostFocus для элемента управления в подчиненной форме не возникают, просто событие Exit для элемента управления подчиненной формы и события ВВОД и GotFocus для элемента управления в основной форме.

Примечание.

Для перемещения фокуса на другой элемент управления часто используется мышь или клавиша, например TAB. Это приводит к возникновению событий мыши или клавиатуры в дополнение к событиям, описанным в этом разделе.

Пример

В следующем примере к текстовому поле LastName присоединяются две процедуры событий. Процедура события Ввод отображает сообщение с указанием типа данных, которые пользователь может ввести в текстовое поле. Процедура события Exit отображает диалоговое окно с запросом у пользователя, следует ли сохранить изменения, прежде чем фокус переместится на другой элемент управления. Если пользователь нажимает кнопку Отмена , аргумент Отмена имеет значение True (1), который перемещает фокус в текстовое поле без сохранения изменений. Если пользователь нажимает кнопку ОК , изменения сохраняются, а фокус перемещается на другой элемент управления.

Чтобы попробовать пример, добавьте следующую процедуру события в форму, содержащую текстовое поле LastName.

Private Sub LastName_Enter() 
 MsgBox "Enter your last name." 
End Sub 
 
Private Sub LastName_Exit(Cancel As Integer) 
 Dim strMsg As String 
 
 strMsg = "You entered '" & Me!LastName _ 
 & "' as your last name." & _ 
 vbCrLf & "Is this correct?" 
 If MsgBox(strMsg, vbYesNo) = vbNo Then 
 Cancel = True ' Cancel exit. 
 Else 
 Exit Sub ' Save changes and exit. 
 End If 
End Sub

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.