lazybones 发表于 2005-3-10 08:15:00

[讨论]如何更改块属性的值?帮助明确说明了,没有SetAttributes这个方法

本帖最后由 作者 于 2005-3-10 8:38:27 编辑 <br /><br /> 其实,帮助getAttributes给了一段例程,我是对概念有些不理解



                       ' Get the attributes for the block reference<BR>                       Dim varAttributes As Variant<BR>                       varAttributes = blockRefObj.GetAttributes<BR>                       。。。


                       ' Change the value of the attribute<BR>                        <FONT style="BACKGROUND-COLOR: #00ff33"> ' Note: There is no SetAttributes. Once you have the variant array, you have the objects.<BR>                       ' Changing them changes the objects in the drawing.</FONT>


<BR>                       varAttributes(0).textString = "NEW VALUE!"<BR>                       <BR>                       ' Get the attributes<BR>                       Dim newvarAttributes As Variant<BR>                       newvarAttributes = blockRefObj.GetAttributes


将变量A赋值给变量B,b=a,对B的操作,如何影响到A呀,难道,地址?...


efan2000 发表于 2005-3-10 13:16:00

Dim varAttributes As Variant<BR>                       varAttributes = blockRefObj.GetAttributes<BR>                       MsgBox varAttributes(0).textString '旧值<BR>                       varAttributes(0).textString = "NEW VALUE!" '新值<BR>这个就是更改属性引用的值的方法。                                <BR>

lazybones 发表于 2005-3-10 20:18:00

其实,我也知道如何修改,不理解的是怎么能够这样修改


B=A,将变量A赋值给变量B,然后对B操作,为何能够影响到A呢?

雪山飞狐_lzh 发表于 2005-3-10 20:35:00

B=A不行,Set B=A才行,明确的说,有关对象的操作才会出现这种现象


Set B=A后,B和A都是同一个对象的引用,对B或A的操作都是对同一个对象的操作


实际上,VB里是有指针的,不过VB开发组不推荐使用而已

lazybones 发表于 2005-3-11 07:42:00

varAttributes = blockRefObj.GetAttributes


varAttributes(0).textString = "NEW VALUE!"<BR>


没有set呀

雪山飞狐_lzh 发表于 2005-3-11 09:08:00

我不是说了么:有关对象的操作才会出现这种现象
页: [1]
查看完整版本: [讨论]如何更改块属性的值?帮助明确说明了,没有SetAttributes这个方法