vba - VBA 鼠标按钮代码仅适用于 Button 1 而不是 Button 2
问题描述
VBA 在 Rockwell Viw SE 应用程序中。
我有一些正在工作的代码,但只有链接到鼠标按钮 1 并且我真的需要它是按钮 2 或鼠标右键单击功能。该代码位于 MouseUp 子上,用于在屏幕上移动对象。我确信这只是 VBA 的一个怪癖,但认为可能有一种解决方法。
鼠标按钮 2 将起作用,但仅当在与单击时相同的对象上释放时,鼠标按钮 1 才不在乎释放发生在屏幕上的哪个位置。
Private Sub Box1_MouseUp(ByVal Button As DisplayClientEx.gfxMouseButtonConstants, ByVal Shift As Integer, ByVal X As Long, ByVal Y As Long)
Dim XObject As Object
Dim YObject As Object
FindNumStart = InStrRev(Box1.ToolTipText, "[") + 1
FindNumEnd = InStrRev(Box1.ToolTipText, "]")
BoxNum = Mid(Box1.ToolTipText, FindNumStart, (FindNumEnd - FindNumStart))
Set XObject = ThisDisplay.FindElement("XW" & BoxNum)
Set YObject = ThisDisplay.FindElement("YW" & BoxNum)
PNum = Box1.ToolTipText & ", " & Chr(34) & Mid(Box1.ToolTipText, 1, (FindNumStart - 14)) & "BoxPosition[" & BoxNum & Chr(34)
If Button = 2 Then
GetCursorPos Mouse
ScreenToClient Me.Application.WindowHandle, Mouse
Box1.Left = Mouse.X - 40
Box1.Top = Mouse.Y - 78
XObject.Value = Box1.Left
XObject.Download
YObject.Value = Box1.Top
YObject.Download
ElseIf Button = 1 Then
GetCursorPos Mouse
ExecuteCommand Cmd & " /X" & Box1.Left - 68 & " /Y" & Box1.Top + 100 & " /T " & PNum
End If
End Sub
解决方案
推荐阅读
- python - 如何在 Quadtree [Python] 中读取和使用 CSV 文件中的坐标?
- java - 使用准备好的语句 INSERT INTO 时出现 ArrayIndexOutOfBoundsException
- angularjs - 在主应用程序模块中将组件作为依赖项传递后没有输出
- swift - SwiftUI TextField 采用最大宽度
- java - 同时单击多个按钮时想要执行任务(Android Studio:java)
- kubernetes - 用于自动缩放/v2beta2 的 kubernetes 规范
- .htaccess - 重定向重复页面
- angular - 如何从 Angular 8 或 9 中的异步函数返回数组
- javascript - 反应 onClick 将类添加到单击的元素但从其他元素中删除
- python - 从 csv 文件创建字典时无法迭代键