access如何获取被双击的控件名称
时间: 2023-10-10 18:14:54 浏览: 44
如果你在Windows窗体应用程序中双击了一个控件,可以通过以下方式获取该控件的名称:
1. 在Windows窗体应用程序中打开Form.Designer.cs文件。
2. 找到该控件的双击事件处理程序,并在其中添加以下代码:
```
private void controlName_DoubleClick(object sender, EventArgs e)
{
Control control = sender as Control;
if (control != null)
{
string controlName = control.Name;
MessageBox.Show("双击了控件:" + controlName);
}
}
```
其中,controlName需要替换为你要双击的控件的名称。
3. 现在,当你在运行程序时双击该控件,就会显示一个消息框,其中包含该控件的名称。
另外,如果你想在运行时获取鼠标双击事件,可以在控件的MouseDown事件中检查e.Clicks属性的值,如果它等于2,就表示发生了双击事件。
相关问题
access如何在vba中双击任意控件后获取该控件的名称
在VBA中,可以使用`Me.ActiveControl.Name`来获取当前活动控件的名称,也就是双击后获取该控件的名称。以下是一个示例代码:
```
Private Sub AnyControl_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
MsgBox "当前活动控件名称为:" & Me.ActiveControl.Name
End Sub
```
这个代码需要在该表单或用户控件的代码模块中添加。其中,`AnyControl`表示任意控件,当任意一个控件被双击时,就会触发该事件,并弹出消息框显示当前活动控件的名称。
access中,如何双击任意控件都执行同一个会返回控件名称的有参函数?
你可以在窗体的代码模块中编写一个通用的函数,用于处理控件的双击事件,然后将该函数绑定到所有控件的双击事件中。该函数可以使用Access的内置函数来获取双击的控件名称,然后将其作为参数传递给你想要执行的函数。
以下是一个示例代码,假设你想要执行的函数名为“myFunction”:
```
Private Sub Form_Load()
Dim ctl As Control
For Each ctl In Me.Controls
If TypeOf ctl Is TextBox Or TypeOf ctl Is ComboBox Then
'绑定双击事件
AddHandler ctl.DoubleClick, AddressOf Control_DoubleClick
End If
Next ctl
End Sub
Private Sub Control_DoubleClick(ByVal sender As Object, ByVal e As EventArgs)
'获取控件名称
Dim ctlName As String
ctlName = Screen.ActiveControl.Name
'执行函数
myFunction(ctlName)
End Sub
```
在上面的代码中,我们遍历了窗体中的所有控件,并将双击事件绑定到文本框和组合框上。当控件被双击时,会触发`Control_DoubleClick`函数,该函数会获取控件名称并将其作为参数传递给`myFunction`函数。