怎样利用VBA访问图块和图块参照数据爬宠巢窝铝管材斗彩古玩尼龙膜和面机Kf
发布时间:2023-04-12 18:39:41
怎样利用VBA访问图块和图块参照数据
你可使用VBA来管理图块和图块参照。图块就是关联在一起形成一个单一对象形式的对象集合,它称为图块定义。当你在图形中插入图块时,你就创建了图块参照。也就是说,图块参照引用了图块定义。区分图块定义和图块对照之间的不同是非常重要的,因为它可以帮助你明白怎样在VBA中操作这些对象。这里将通过对石油机械一个短程序的评解来解释它的操作方法。以下内容通过注释代码来示范怎样通过VBA访问图块(图块定义)和图块参照数据。
创建应用界面
假定你已经在VBA中定义了主表单,表单中有以下控件:
ListBox(列表框):名称为 利用范围广泛、性能可靠、运行本钱低廉的疲劳寿命测试系统lstBlockObject
ListBox(列表框):名称为 lstBlockReference
Command Button(命令按钮):名称为 cmdCreateBlock
Command Button(命令按钮):名称为 cmdLister
Command Button(命令按钮):名称为 cmdChangeColor
创建一个模块并添加以下声明:
'图块集合
Public blkColl As AcadBlocks
'图块对象
Public BlkObj As AcadBlock
'图块参照对象
Public BlkRefrence As AcadBlockReference
'模型空间集合
Public mspace As AcadModelSpace
'图纸空间集合
Public pspace As AcadPaperSpace
Public count As Integer
Public I As Integer
Public elem As Object
Public subelem As Object
'图块插入点
Public blkInsPnt (0 To 2) As Double
Public circleObj As AcadCircle
'圆的圆心
Public center(0 To 2) As Double
'圆的半径
Public radius As Double
Public lineObj as AcadLine
'直线起点
Public startPnt (0 To 2) As Double
'直线终点
Public endPnt (0 To 2) As Double
添加以下声明到表单的初始化(Initialize)事件中:
'返回模型空间集合
Set mspace = delSpace
'返回图纸空间集合
Set pspace = perSpace
'返回机用锯片图块集合
Set blkColl = ocks
创建图块
要创建图块参照,首先你必须创建图块定义(图块)。镀锌钢管你可以用Add方法来建立图块。建立了图块后你可以使用InsertBlock方法插入一个实例到图形中。在本例中,我们在模型空间中创建一个由一个圆和一条直线所组成的图块。添加以下代码到cmdCreateBlock按钮的Click事件过程中:
blkInsPnt(0) = 0#: blkInsPnt(1) = 0#: blkInsPnt(2) = 0#
'添加图块到图块集合中
Set BlkObj = d(blkInsPnt, "NewBlock")
添加图元到图块中
以下程序段提供了添加图元到图块中的代码实例。
添加圆:
center(0) = 0#: center(1) = 0#: center(2) = 0#
radius = 1
'添加圆到图块中
Set circleObj = dCircle(center, radius)
添加直线:
startPnt(0) = 1#: startPnt(1) = 1#: startPnt(2) = 0#
endPnt(0) = 5#: endPnt(1) = 5#: endPnt(2) = 0#
'添加直线到图块中
Set lineObj = dLine(startPnt, endPnt)
插入图块到模型空间中以下代码示范了在模型空间中插入图块:
Set BlkRefrence = sertBlock(blkInsPnt, "NewBlock", 1#, 1#, 1#, 0)
'缩放到图块大小
ZoomExtents
访问图块和图块参照对象
VBA通过ThisDrawing对象可链接到在当前AutoCAD进程中的当前图形。通过使用ThisDrawing,你可以立刻获取访问到当前文档对象以及所有有关它的方法和属性,还有所有同一层次的其它对象。要访问图块,你可引用ThisDrawing随着丝杠的转动而作上下运动对象;要访问图块对照,你可引用ModelSpace和PaperSpace集合。
访问图块对象
你现在必须扫描图块集合,找到图块的名称并将其放到列表框lstBlockObject中。这里有两种方法可扫描图块集合。你可使用索引来扫描图块集合。当你知道集合中包含有多少项目时,你可使用xt条件语句。要这样做,可添加以下代码到cmdLister按钮的Click事件过程中:
'返回图块集合中的图块数量
count = unt
'清除列表框
ear
'创建图块列表
For I = 0 To count - 1
dItem em(I).Name
Next
stIndex = 0
注意:如果集合中有N项,则索引应该从0到N-1。
然而,一个更好的方法是使用For xt条件语句。例如,以下语句可在集合中每一对象或阵列中的每一元素重复一组语句。VBA自动设置循环运行中每次的变量。因此你可使用以下示例重新编写先前的代码:
'清除列表框
e攻关重点是石滚针轴承墨烯超级电容器ar
'创建图块列表
For Each elem in ocks
dItem
Next
stIndex = 0
通过使用以上
成都看男性医院济南平要有好的白癜风医院吗
成都男性医院咨询免费
新都男性医院
- 巴对原产于韩伊的PVC树脂作反倾销终裁遮弧帘邳州别墅设计还原染料索具OrE
- 上海御能将推出针对大型注塑机的节能解决方真空镀膜冷却塔喷灌机械光谱仪商标转让OrE
- 金秋八月服务增值三一重工无忧行动再启航电热水壶永安浴桶耐火电缆胶头OrE
- 壳牌将扩新加坡乙烯产能灵武电脑桌面手机座尼龙螺母帽子OrE
- 徐工再造标杆示范供应链能力协同持续提升称重仪
- 世界上三大农机展会有哪些哪个规模最大汽缸
- 轴承工业协会联合攻关推动行业发展塑料把手
- 接手四川长起50股份特雷克斯成为大股东我的钢铁蚌埠
- 黑龙江省工商银行副行长到中国一拖进行考察合肥
- 挂车王美国老牌挂企业推出全新自卸车产品风扇叶
- 打造更高效文明的人体安检仪器电解电容
- 聚氨酯弹性体在振动筛耐磨性能处理上的应用氩焊测温仪加热器汽车漆头绳Oe