繁体   English   中英

陷害右键单击工作表文本框中

[英]Trapping right-click in worksheet textbox

当用户右键单击工作表文本框而不是ActiveX时,我希望能够捕获右键单击事件。

我知道可以很容易地为用户窗体文本框完成操作,这不是我要的。 在工作表事件Worksheet_BeforeRightClick我具有以下内容:

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
    mRightClick.RightClickOnMoMList rngTarget:=Target, boolCancel:=Cancel
End Sub

但是,当我右键单击文本框时,它甚至都没有输入(但同一工作表的单元格确实可以工作)。 我怀疑这是由于Target参数是一个Range。

有没有一种方法可以使该事件捕获对文本框等形状的右键单击?

我已经做到了:
-打开Excel并进入设计模式
-在工作表中添加了一个文本框
-双击文本框,将我带到该控件的Change事件
-我选择了MouseUp事件

您所追求的是右键按钮的Button = 2(左侧按钮为1)。

所以...

Private Sub TextBox1_MouseUp(ByVal Button As Integer, _
                            ByVal Shift As Integer, _
                            ByVal X As Single, ByVal Y As Single)

    If Button = 1 Then
        MsgBox "Left-click"
    ElseIf Button = 2 Then
        MsgBox "Right-click"
    End If

End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM