怎样去获取一个对象的相关属性[原创]
比如说:在一段程序里,要获得一文字的高度,怎么样出现拾取框让用户去选择任意文字
这个拾取框的单选和多选怎么控制
你需要看看对象模型
请说明一下了,我用了,但都是多选的
Sub Ch4_AddToASelectionSet()' 创建新的选择集
Dim sset As AcadSelectionSet
Set sset = ThisDrawing.SelectionSets.Add("SS1")
' 提示用户选择对象并将它们添加到选择集中。
' 要完成选择,按回车。
sset.SelectOnScreen
' 在选择集中循环并将每一对象的颜色改为蓝色。
Dim entry As AcadEntity
For Each entry In sset
entry.Color = acBlue
entry.Update
Next entry
End Sub
看看这样
用Dim retent As Object
Dim pnt As Variant
Thisdrawing.Utility.GetEntity retent, ont, "提示内容"
选择的对象赋值给retent
可是可以,但有一个问题不能解决
当你没有点到对象时就会报错如果用出错处理,也就是说你运行一次程序,就一定要选中对象,要不然
就要重新运行。我想这样,当你没有选中对象时可以再选 ,,
可不可以呀
你需要在出错处理时让用户重新选择
但如果要是用户取消了呢,怎么区分这个空值
那用户一旦运行了这个程序,就不能中途取消了,这样也不完美吧
除了通过出错编号来区分外,还需要根据命令行提示区分
在未选择到对象、或按了回车、或按了空格、或按了取消,出错编号都是-2147352567。但命令行提示有些不同,如果按了取消则命令行多了*取消*这样的字符(注册如果英文版则为*Cancel*)。所以通过使用
ThisDrawing.GetVariable("lastprompt")
来取得命令行的最后一行就可以确认用户的操作了。
ok
好好好
页:
[1]