- 积分
- 518
- 明经币
- 个
- 注册时间
- 2003-7-22
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
我用如下代码实现在屏幕上点取一点时可使用Z等透明命令。
'在点取一点时可以使用PAN等透明命令,而单击右键时退出点取,返回EMpty值
Public Function Cxs_GetPoint(Optional LastPt As ACAD_POINT, Optional
Msg As String) As ACAD_POINT
Dim pickpt As ACAD_POINT
On Error Resume Next
continuetopick:
pickpt = ThisDrawing.Utility.GetPoint(LastPt, Msg)
Select Case Err.Number
Case -2147352567 '键入透明命令(如PAN、Z等)时为此值。
Err.Clear
GoTo continuetopick '完成透明命令后继续提示点选基准点
Case 0
Cxs_GetPoint = pickpt '无错误时即返回点值
End Select '程序出现-2147352567以外的错误时都退出函数,函数返
回EMpty值
End Function
当我想用类似方法实现点选实体(GetEntity方法)时可用透明命令时,遇到如下
问题:
由于在进行点选时,按下ESC键、单击右键、按透明命令的错误号都一致,无法区
别,
故无法实现按下ESC键或单击右键时放弃点选操作的意图。我曾下载斑主关于用
API识别ESC键
代码来用,但调试没有成功,ESCKEY总是等于FALSE。
后来又看到有GETXXX类下载,但还未摸索出如何用,以及它有什么好处。
特向版主和各位大虾求教! |
|