明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1415|回复: 4

[求助][VBA]关于sendcommond的一些问题

[复制链接]
发表于 2004-8-2 17:29:00 | 显示全部楼层 |阅读模式
这是小弟的代码: 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: ") 请问要如何解决?
发表于 2004-8-2 18:03:00 | 显示全部楼层
改成这样试试看: 邦定闭合曲线
[I]ThisDrawing.SendCommand "_boundary" & vbCrLf[/I]
'ThisDrawing.SendCommand (Chr(92))
 楼主| 发表于 2004-8-2 18:14:00 | 显示全部楼层
还是不行~


在执行BOUNDARY命令时,我还没进行选择内部点,程序就已经跳到执行:offsetnum = ThisDrawing.Utility.GetInteger(vbCrLf & "Enter offset values: ")


这句代码了,造成这点的原因好像是因为SENDCOMMAND发送BOUNDARY命令时


造成了不同步。


大哥,你能不能帮我调试一下程序,谢谢呀
发表于 2004-8-2 22:15:00 | 显示全部楼层
Sub tttttttttttt()
a = ThisDrawing.Utility.GetPoint
ThisDrawing.SendCommand "-BOUNDARY" & vbCr & a(0) & "," & a(1) & vbCr & vbCr
MsgBox 1
End Sub
 楼主| 发表于 2004-8-3 08:56:00 | 显示全部楼层
谢谢版主~你这种方法实在是太妙了 不过,这样也会带来一个问题,那就是:a = ThisDrawing.Utility.GetPoint
如果选择的这个点是符合BOUNDARY的内部点,则程序通过,反之,若该点不符合 BOUNDARY的内部点时,程序也会像选择正确内部点一样结束,有没有办法判断我们所选择的内部点是符合BOUNDARY要求的呢? 如果符合则提示:BOUNDARY正确完成,如果不符合则继续判断内部点?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 02:43 , Processed in 0.181401 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表