zhu1 发表于 2005-8-17 14:31:00

请教:如何在程序里判断我“按下鼠标右键”?

请问,如何在程序里判断我“按下鼠标右键”?通过这样的判断我可以从某个过程中退出来

zhu1 发表于 2005-8-18 16:10:00

难道这是个很难的问题吗?
怎么没有人回答呀

mikewolf2k 发表于 2005-8-18 19:48:00

按下右键会产生一个错误,通过捕获错误号知道。具体这方面的源代码网站上有,你搜索一下。

PS122 发表于 2005-8-19 08:48:00

参考一下:

Public Function ClickConfirm() As Boolean
Dim objUtil As AcadUtility
Dim varPnt As Variant
Dim strPrmt As String
On Error GoTo Err_Control
‘strPrmt = "Left click to confirm, right click to cancel"
strPrmt = "鼠标左键确认,右键取消"
Set objUtil = ThisDrawing.Utility
varPnt = objUtil.GetPoint(Prompt:=strPrmt)
'No error? Then they "left clicked" (or typed a point on
'The command line. Meh. Users are crazy.
ClickConfirm = True
Exit_Here:
Exit Function
Err_Control:
'Debug.Print Err.Description; Err.Number
Select Case Err.Number
    Case -2145320928
    'Right click with command prompt or "Enter" key
    'User input is a keyword
      Err.Clear
      Resume Exit_Here
    Case -2147352567
    'User pressed escape or clicked a toolbar
    'Method 'GetPoint' of object 'IAcadUtility' failed
      Err.Clear
      Resume Exit_Here
    Case Else
      Err.Clear
      Resume Exit_Here
End Select
End Function
功能
实现鼠标左键确认,右键取消功能
语法
ClickConfirm()
返回值
True为按了左键

zhu1 发表于 2005-8-19 10:15:00

谢谢你们,我马上去搞一下。
页: [1]
查看完整版本: 请教:如何在程序里判断我“按下鼠标右键”?