急求:初学vba 请大家帮助
如果我想通过对话框修改点的坐标,然后在autocad中图形就相应的做出了改变。请各位高手帮帮小弟。可否给出点程序。我对vba的函数不清楚。 说说你的具体要求 我大概明白 <A name=62906><FONT color=#000066><B>tfod2000</B></FONT></A> 老兄的意思了!好像我没发现在VBA里没有点的坐标属性所以在已创建的点上好像不能获取的!还好点的属性并不多!我想了个傻办法就是把原来的物体选取后创建一个新的点,再把原来点的属性赋予它!再把原来的点删除!呵呵!实在惭愧小弟我只能像出这个傻办法来解决这个问题!不知道哪位大虾有更好的办法请告诉小弟!下面是小弟的代码有不对的地方请各位指正:<BR>Sub test()<BR>On Error Resume Next<BR>Dim sset As AcadSelectionSet<BR>Set sset = ThisDrawing.SelectionSets.Add("test")<BR>sset.SelectOnScreen<BR>Dim entry As AcadEntity<BR>For Each entry In sset<BR>Name1 = entry.ObjectName<BR>If Name1 = "AcDbPoint" Then<BR>Dim pointObj As AcadPoint<BR>Dim point1(0 To 2) As Double<BR>' 定义点的位置<BR>point1(0) = 0#: point1(1) = 0#: point1(2) = 0# '可以改为你需要的点<BR>' 创建点<BR>Set pointObj = ThisDrawing.ModelSpace.AddPoint(point1)<BR>pointObj.Color = entry.Color<BR>pointObj.Layer = entry.Layer<BR>pointObj.Linetype = entry.Linetype '可以不需要<BR>pointObj.LinetypeScale = entry.LinetypeScale '可以不需要<BR>pointObj.Lineweight = entry.Lineweight '可以不需要<BR>pointObj.Thickness = entry.Thickness '可以不需要<BR>entry.Delete<BR>Else<BR>MsgBox "没有点被选去,请检查", vbOKOnly<BR>End If<BR>Next entry<BR>sset.Delete<BR>End Sub<BR>在point1的3个点的定义中可以加入你对话框里点的3个坐标数据! 本帖最后由 作者 于 2004-10-30 11:53:34 编辑 <br /><br /> 不好意思写的太急了那段msgbox应该是 MsgBox "被选去的图元中有非点的物体但它没有被改变,请检查", vbOKOnly<BR>
页:
[1]