Método Page.SetFocus (Access)
O método SetFocus move o foco para o formulário especificado, para o controle especificado no formulário ativo ou para o campo especificado na folha de dados ativa.
Sintaxe
expressão. Setfocus
Expressão Uma variável que representa um objeto Page .
Valor de retorno
Nada
Comentários
Use o método SetFocus quando quiser que um determinado campo ou controle tenha o foco para que toda a entrada do usuário seja direcionada a esse objeto.
Para ler algumas das propriedades de um controle, você precisa garantir que o controle tenha o foco. Por exemplo, uma caixa de texto deve ter o foco antes que possa ler sua propriedade Text.
Outras propriedades podem ser definidas somente quando um controle não tem o foco. Por exemplo, você não pode definir propriedades de um controle visível ou Enabled como False (0) quando que o controle tem o foco.
Você também pode usar o método SetFocus para navegar em um formulário de acordo com certas condições. Por exemplo, se o usuário selecionar não aplicável para a primeira de um conjunto de perguntas em um formulário que seja um questionário, seu código Visual Basic pode então automaticamente pule as perguntas dessa série e mover o foco para o primeiro controle no próximo conjunto de perguntas.
Você pode mover o foco somente para um controle ou formulário visível. Um formulário e controles em um formulário não ficam visíveis até que o evento Load do formulário terminou. Portanto, se você usar o método SetFocus no evento Load de um formulário para mover o foco para esse formulário, você deve usar o método Repaint antes que o método SetFocus.
Você não pode mover o foco para um controle se sua propriedade Enabled for definida como False. Você deve definir a propriedade Habilitada de um controle como True (1) antes de poder mover o foco para esse controle. No entanto, você pode mover o foco para um controle se sua propriedade Locked estiver definida como True.
Se um formulário contiver controles para os quais a propriedade Enabled é definida como True, você não pode mover o foco para o próprio formulário. Você só pode mover o foco para controles no formulário. Nesse caso, se você tentar usar SetFocus para mover o foco para um formulário, o foco é definido para o controle no formulário que recebeu pela última vez o foco.
Use o método SetFocus para mover o foco para um subforma, que é um tipo de controle. Você também pode mover o foco para um controle em um subformulário usando o método SetFocus duas vezes, movendo o foco primeiro para o subformulário e depois para o controle no subformulário.
Exemplo
O exemplo a seguir usa o método SetFocus para mover o foco para uma caixa de texto EmployeeID em um formulário Employees .
Forms!Employees!EmployeeID.SetFocus
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.