明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1767|回复: 3

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

[复制链接]
发表于 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) = "<Or"                    ' ※ 类型集合起点
FData(1) = "LWPolyLine"                    ' ※多端线
FData(2) = "Or>"                      ' ※ 类型集合终点
' ※ 选择图元
Set Selects = ThisDrawing.SelectionSets.Add("Objs")
Selects.SelectOnScreen FType, FData                                                                 

sset.Delete '删除选择集

End
End Sub

运行后为什么不能在屏幕上选取对象,而不加窗体却能选取对象,我需要用到窗体,怎样解决这个问题???

怎样加窗体在屏幕上选取对象??

 楼主| 发表于 2005-7-29 14:31:00 | 显示全部楼层
请各位兄台帮忙,指点!!!谢谢!!!
发表于 2005-7-29 17:40:00 | 显示全部楼层

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

发表于 2005-7-29 19:16:00 | 显示全部楼层

me.hide

sset.ThisDrawing.SelectOnScreen '提示用户选择

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-27 12:43 , Processed in 0.166631 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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