Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O evento Enter ocorre antes de um controle recebe de fato o foco de um controle no mesmo formulário ou relatório.
Sintaxe
expressão. Introduzir
expressão Uma variável que representa um objeto ComboBox .
Comentários
Esse evento não se aplica a caixas de seleção, botões de opção ou botões de alternância em um grupo de opções. Aplica-se somente ao grupo de opções propriamente dito.
Para executar um macro ou procedimento de evento quando esses eventos ocorrerem, defina a propriedade OnEnter ou OnExit com o nome da macro ou como [procedimento do evento].
Como o evento Enter ocorre antes do foco é movido para um determinado controle, você pode usar um procedimento de evento ou macro Enter para exibir instruções; Por exemplo, você poderia usar um macro ou procedimento de evento para exibir uma pequena formulário ou caixa de mensagem que identifica o tipo de dados que geralmente contém o controle, ou fornecendo instruções sobre como usar o controle.
O evento Enter ocorre antes do evento GotFocus. O evento Exit ocorre antes do evento LostFocus.
Ao contrário de eventos GotFocus e LostFocus, os eventos Enter e Exit não ocorrem quando um formulário recebe ou perde o foco. Por exemplo, suponha que você selecione uma caixa de seleção em um formulário e clique em um relatório. Os eventos Enter e GotFocus ocorrerem quando você marcar a caixa de seleção. Somente o evento LostFocus ocorre quando se clica no relatório. O evento Exit não ocorre (porque o foco será movido para uma janela diferente). Se você selecionar a caixa de seleção no formulário novamente para atualizá-lo para o primeiro plano, o evento GotFocus ocorre, mas não o evento Enter (porque o controle tinha o foco quando o formulário foi a última atividade). O evento Exit ocorre somente quando você clicar em outro controle no formulário.
Se mover o foco para um controlo num formulário e esse controlo não tiver o foco nesse formulário, os eventos Exit e LostFocus do controlo que tem o foco no formulário ocorrem antes dos eventos Enter e GotFocus do controlo para o qual se moveu.
Se o mouse for utilizado para mover o foco de um controle em um formulário principal para um controle em um subformulário desse formulário (um controle que não tenha mais o foco no subformulário), ocorrerão os eventos a seguir:
- Exit (para o controle no formulário principal)
- LostFocus (para o controle no formulário principal)
- Insira (para o controle de subformulário)
- Exit (para o controle no subformulário que tinha o foco)
- LostFocus (para o controle no subformulário que tinha o foco)
- Insira (para o controle no subformulário que o foco foi movido)
- GotFocus (para o controle no subformulário que o foco foi movido)
Se o controlo para o qual se moveu no subformulário tinha o foco anteriormente, não ocorre o evento Enter nem o evento GotFocus , mas ocorre o evento Enter para o controlo de subformulário. Se mover o foco de um controlo num subformulário para um controlo no formulário principal, os eventos Exit e LostFocus do controlo no subformulário não ocorrem, apenas o evento Exit para o controlo de subformulário e os eventos Enter e GotFocus para o controlo no formulário principal.
Observação
Utiliza frequentemente o rato ou uma tecla, como a Tecla de Tabulação, para mover o foco para outro controlo. Isso faz com que os eventos de mouse ou de teclado ocorram, além dos eventos discutidos neste tópico.
Exemplo
No exemplo seguinte, são anexados dois procedimentos de evento à caixa de texto Apelido . O procedimento de evento Enter exibe uma mensagem especificando que tipo de dados que o usuário pode digitar na caixa de texto. O procedimento de evento Exit exibe uma caixa de diálogo perguntando ao usuário se as alterações devem ser salvas antes do foco será movido para outro controle. Se o utilizador clicar no botão Cancelar , o argumento Cancelar está definido como Verdadeiro (1), que move o foco para a caixa de texto sem guardar as alterações. Se o utilizador escolher o botão OK , as alterações são guardadas e o foco muda para outro controlo.
Para experimentar o exemplo, adicione o seguinte procedimento de evento a um formulário que contém uma caixa de texto chamada 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
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.