Access VBA教程:SetFocus方法

SetFocus方法将焦点移到特定的窗体、活动窗体上特定的控件,或者活动数据表的特定字段上。

expression.SetFocus

expression  必需。返回“Applies To”列表中的一个对象的表达式。

说明

使用 SetFocus方法可以让特定字段或控件获得焦点以便所有用户输入都针对这个对象。

要读取控件的某些属性,该控件必须具有焦点。例如,在能读取文本框的Text属性之前,该文本框必须具有焦点。

某些属性只有在控件没有焦点时才能设置。例如,当一个控件具有焦点时,不能将该控件的VisibleEnabled属性设为 False(0)。

也可以使用 SetFocus方法根据某些条件在窗体中定位。例如,如果用户为问卷窗体上一组问题中的第一个选择了 Not applicable,则 Visual Basic 代码可以自动跳过这一组问题,并将焦点移到下一组问题中的第一个控件。

只能将焦点移到可见的控件或窗体上。窗体和窗体上的控件在窗体的Load事件已经结束后才可见。因此,如果在窗体的 Load事件中使用 SetFocus方法将焦点移到该窗体,则必须在 SetFocus方法之前使用Repaint方法。

如果控件的 Enabled属性设为 False,则不能将焦点移到该控件上。在将焦点移到该控件之前,必须将其 Enabled属性设为 True(-1)。但如果该控件的 Locked属性设为 True,则可以将焦点移到该控件上。

如果窗体包含了 Enabled属性设为 True 的控件,则不能将焦点移到窗体本身,而只能将焦点移到窗体控件上。在这种情况下,如果试图用 SetFocus 将焦点移到窗体上,则焦点将移到窗体中上次获得焦点的控件上。

提示   使用 SetFocus方法可以将焦点移到子窗体中,子窗体也是一种类型的控件。您也可以两次使用 SetFocus方法将焦点移到子窗体上的某个控件上:首先将焦点移到子窗体,然后再移到子窗体上的控件上。

VBA示例

下面的示例使用 SetFocus方法将焦点移到“雇员”窗体上的“雇员ID”文本框中:


Forms!Employees!EmployeeID.SetFocus

上页:Access VBA教程:SetDefaultWorkgroupFile方法 下页:Access VBA教程:SetHiddenAttribute方法

Access VBA教程:SetFocus方法

Access VBA教程:SetHiddenAttribute方法 Access VBA教程:SetOption方法
Access VBA教程:SizeToFit方法 Access VBA教程:StringFromGUID方法
Access VBA教程:SysCmd方法 Access VBA教程:TextHeight方法
Access VBA教程:TextWidth方法 Access VBA教程:TransferSQLDatabase方法
Access VBA教程:Undo方法 Access VBA教程:UseDefaultFolderSuffix方法
Access VBA教程:AccessObject对象 Access VBA教程:AccessObjectProperty对象
Access VBA教程:AllFunctions集合 Access VBA教程:Application对象
Access VBA教程:BoundObjectFrame对象 Access VBA教程:CheckBox对象
Access VBA教程:CodeData对象 Access VBA教程:CodeProject对象
Access VBA教程:ComboBox对象 Access VBA教程:CommandButton对象
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号