泳裤厂家
免费服务热线

Free service

hotline

010-00000000
泳裤厂家
热门搜索:
成功案例
当前位置:首页 > 成功案例

怎样利用VBA访问图块和图块参照数据似的

发布时间:2021-07-05 16:58:50 阅读: 来源:泳裤厂家

怎样利用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)<李总参照我们的机器做了对照/p>

'缩放到图块大小

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

通过使用以上

店里治灰指甲多少钱
头晕耳鸣如何治疗吃什么药好
什么是手足癣是灰指甲吗