[求助][VBA]关于sendcommond的一些问题
这是小弟的代码:Sub Example_StartPoint()
'2.邦定闭合曲线
ThisDrawing.Utility.prompt ("_boundary" & Chr(32))
'ThisDrawing.SendCommand (Chr(92))
'3.选中对象,并产生偏移曲线
Dim sset As AcadSelectionSet
Dim offsetobj As Variant
Dim entry As AcadLWPolyline
Dim offsetnum As Double
'-3.1提示偏移量
offsetnum = ThisDrawing.Utility.GetInteger(vbCrLf & "Enter offset values: ")
'-3.2提示内、外偏移,并执行偏移
Set sset = ThisDrawing.SelectionSets.Add("ss345")
sset.SelectOnScreen
For Each entry In sset
offsetobj = entry.Offset(offsetnum)
offsetobj(0).color = acRed
Next entry
End Sub
以上代码执行时,ThisDrawing.Utility.prompt ("_boundary" & Chr(32))
该句代码未完成,就已经进入执行offsetnum = ThisDrawing.Utility.GetInteger(vbCrLf & "Enter offset values: ")
请问要如何解决? 改成这样试试看:
邦定闭合曲线
ThisDrawing.SendCommand "_boundary" & vbCrLf
'ThisDrawing.SendCommand (Chr(92)) 还是不行~
在执行BOUNDARY命令时,我还没进行选择内部点,程序就已经跳到执行:offsetnum = ThisDrawing.Utility.GetInteger(vbCrLf & "Enter offset values: ")
这句代码了,造成这点的原因好像是因为SENDCOMMAND发送BOUNDARY命令时
造成了不同步。
大哥,你能不能帮我调试一下程序,谢谢呀 Sub tttttttttttt()
a = ThisDrawing.Utility.GetPoint
ThisDrawing.SendCommand "-BOUNDARY" & vbCr & a(0) & "," & a(1) & vbCr & vbCr
MsgBox 1
End Sub
谢谢版主~你这种方法实在是太妙了
不过,这样也会带来一个问题,那就是:a = ThisDrawing.Utility.GetPoint
如果选择的这个点是符合BOUNDARY的内部点,则程序通过,反之,若该点不符合
BOUNDARY的内部点时,程序也会像选择正确内部点一样结束,有没有办法判断我们所选择的内部点是符合BOUNDARY要求的呢?
如果符合则提示:BOUNDARY正确完成,如果不符合则继续判断内部点?
页:
[1]