路边 发表于 2005-7-29 14:30:00

请帮忙:为什么不能在屏幕上选取??

请帮忙:为什么不能在屏幕上选取??
程序如下:
Sub lyl()
UserForm1.show
End Sub
在CAD中插入一个窗体(UserForm1),在窗体上添加一个命令(CommandButton1)按钮,双击填写如下代码
Private Sub CommandButton1_Click()
Dim sset As AcadSelectionSet '定义选择集对象
Dim element As AcadEntity '定义选择集中的元素对象
On Error Resume Next
ThisDrawing.SelectionSets("ss1").Delete
Set sset = ThisDrawing.SelectionSets.Add("ss1") '新建一个选择集
sset.ThisDrawing.SelectOnScreen '提示用户选择
For Each element In sset '在选择集中进行循环
element.Color = acGreen '改为绿色
Next
sset.Delete '删除选择集
ThisDrawing.SelectionSets("Objs").Delete
Dim FType(2) As Integer          ' ※ 选择过滤器的类型代码
Dim FData(2) As Variant          ' ※ 选择过滤器的值
' ※ 给定选择过滤器类型代码
FType(0) = -4                  ' ※ 条件组合码
FType(1) = 0
FType(2) = -4                  ' ※ 条件组合码
' ※ 给定选择过滤器值为可以生成面域的图元类型
FData(0) = ""                      ' ※ 类型集合终点
' ※ 选择图元
Set Selects = ThisDrawing.SelectionSets.Add("Objs")
Selects.SelectOnScreen FType, FData                                                               
sset.Delete '删除选择集
End
End Sub
运行后为什么不能在屏幕上选取对象,而不加窗体却能选取对象,我需要用到窗体,怎样解决这个问题???
怎样加窗体在屏幕上选取对象??

路边 发表于 2005-7-29 14:31:00

请各位兄台帮忙,指点!!!谢谢!!!

gyl 发表于 2005-7-29 17:40:00

选择前隐藏窗口,选择后再显示窗口.

mikewolf2k 发表于 2005-7-29 19:16:00

me.hide
sset.ThisDrawing.SelectOnScreen '提示用户选择
页: [1]
查看完整版本: 请帮忙:为什么不能在屏幕上选取??