Метод Form.SetFocus (Access)
Метод SetFocus перемещает фокус в указанную форму, указанный элемент управления в активной форме или указанное поле в активной таблице.
Синтаксис
expression. Setfocus
выражение: переменная, представляющая объект Form.
Замечания
Используйте метод SetFocus , если требуется, чтобы для определенного поля или элемента управления был фокус, чтобы все входные данные пользователя направлялись на этот объект.
Чтобы прочитать некоторые свойства элемента управления, необходимо убедиться, что элемент управления имеет фокус. Например, текстовое поле должно иметь фокус, прежде чем вы сможете прочитать его свойство Text .
Другие свойства можно задать только в том случае, если элемент управления не имеет фокуса. Например, нельзя задать для свойств Visible или Enabled элемента управления значение False (0), если этот элемент управления имеет фокус.
Вы также можете использовать метод SetFocus для навигации в форме в соответствии с определенными условиями. Например, если пользователь выбирает Не применимо для первого из набора вопросов в форме, которая является анкетой, код Visual Basic может автоматически пропустить вопросы в этом наборе и переместить фокус на первый элемент управления в следующем наборе вопросов.
Фокус можно переместить только на видимый элемент управления или форму. Форма и элементы управления в форме не отображаются до завершения события Load формы. Поэтому при использовании метода SetFocus в событии Load формы для перемещения фокуса в эту форму необходимо использовать метод Repaint перед методом SetFocus .
Невозможно переместить фокус на элемент управления, если его свойство Enabled имеет значение False. Чтобы переместить фокус на этот элемент управления, необходимо задать для свойства Enabled значение True (1). Однако вы можете переместить фокус на элемент управления, если для его свойства Locked задано значение True.
Если форма содержит элементы управления, для которых свойство Enabled имеет значение True, вы не сможете переместить фокус на саму форму. Фокус можно перемещать только на элементы управления в форме. В этом случае, если вы попытаетесь использовать SetFocus для перемещения фокуса в форму, фокус будет установлен на элемент управления на форме, которая в последний раз получила фокус.
Используйте метод SetFocus для перемещения фокуса в подчиненную форму, которая является типом элемента управления. Вы также можете переместить фокус на элемент управления в подчиненной форме с помощью метода SetFocus дважды, переместив фокус сначала в подформу, а затем в элемент управления в подчиненной форме.
Пример
В следующем примере метод SetFocus используется для перемещения фокуса в текстовое поле EmployeeID в форме Employees .
Forms!Employees!EmployeeID.SetFocus
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.