如何让一个对象处于选中状态??
如何让一个对象处于选中状态??而不要用户来操作(已经得到该对象)
另外一个对象的 hightlight 方法有什么用?
急!!如果你觉得不能实现也可以告诉我,以便我改用别的方法!!
rt选中状态其实就是高亮状态,用Highlight方法可以实现
不是吧!高亮好像不行噢!!
在这之前我也认为高亮就是选中状态可用了以后
好像不是这样的!!!
斑竹,你试试就知道设置高亮不行了!!
rt斑竹,你看看这!!!
Sub Example_AddHatch()Dim hatchObj As AcadHatch
Dim patternName As String
Dim PatternType As Long
Dim bAssociativity As Boolean
' Define the hatch
patternName = "ANSI31"
PatternType = 0
bAssociativity = True
' Create the associative Hatch object in model space
Set hatchObj = ThisDrawing.ModelSpace.AddHatch(PatternType, patternName, bAssociativity)
' Create the outer boundary for the hatch. (a circle)
Dim outerLoop(0 To 0) As AcadEntity
Dim center(0 To 2) As Double
Dim radius As Double
center(0) = 3: center(1) = 3: center(2) = 0
radius = 10
Set outerLoop(0) = ThisDrawing.ModelSpace.AddCircle(center, radius)
' Append the outerboundary to the hatch object, and display the hatch
hatchObj.AppendOuterLoop (outerLoop)
hatchObj.Evaluate
ThisDrawing.Regen True
hatchObj.HightLight True
'◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎
SendCommand "_explode" & vbCr'这句需要用户来选择对象
'◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎◎
End Sub
Sub Example_SendCommand()
'运行该方法之前,手动选中由 Example_AddHatch() 添加的hatch
ThisDrawing.SendCommand "_explode" & vbCr
'执行结束 完全达到 分解的效果
End Su
vba中的选择集与AutoCad的选择是不同的!!!
你可能没有看清VBA中对选择集的说明,vba中的选择集与AutoCad的选择是不同的!!!
VBa的选择集只能用于VBA中(只能用于VBA的对象模型中)
当你用SendCommand时,你用的时AutoCAd的命令,这时即使你已经新建了一个选择集,但AutoCad本身并不认为你已经选择实体了。
你应在SendCommand "_explode" & vbCr 后
用w或c命令来选择实体(即我们在AutoCad中作图时用的Window窗口和Crossing窗交模式选择实体)
VBA的对象模型还不完善,当你调用AutoCAd的命令时,就应完全按AutoCAd的思路进行。
如何让一个对象处于选中状态??
另外你看一下这文章或许有用:(这种做法更好)http://www.mjtd.com/a2/list.asp?id=30
页:
[1]