访问 - 未触发 MouseDown 事件

Access - MouseDown Event not triggered

首先,我想说我是 Access 的新手,如果我的问题很愚蠢,请提前原谅。也就是说,我在 Access 中创建了一个非常简单的表单,并希望在每次按下鼠标时显示一条消息。出于这个原因,我在 Access 中添加了以下附加到“鼠标按下”事件的代码:

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
    MsgBox "Click"
End Sub

但是,无论我点击鼠标多少次,它都不起作用。我试过将其移动到“Mouse Up”和“Mouse Move”,但似乎无法触发鼠标事件。也就是说,当我将事件设置为“按键”时,一切正常。

如果您能猜出问题的原因,我将不胜感激。难道我用的是Razor鼠标?按键触发成功似乎很奇怪,但 none 的鼠标触发正常。提前致谢!

发件人:https://docs.microsoft.com/en-us/office/vba/api/access.form.mousedown

"要使窗体发生 MouseDown 事件,请在空白区域按下鼠标按钮或在窗体上记录选择器。要使窗体部分发生 MouseDown 事件,请按在表单部分的空白区域中单击鼠标按钮。"

所以你需要一个“空白区域”来点击。

您可能正在寻找 Detail_MouseDown

Form_MouseDown 影响记录选择器。

整个表单主体是详细信息部分,受Details_MouseDown影响。

请注意,如前所述,记录和标签具有单独的 MouseDown 事件。如果您想捕获窗体上的所有鼠标点击,一种方法是使用一个对象来处理这些事件(并可能将它们重定向回窗体)并在 Form_Load 上为每个控件初始化它。请参阅 以获取一些指导,但请注意,很遗憾,每种控件都需要对象。