373294296 发表于 2018-10-19 09:28:00

这一段怎么放到 vb6.0里运行??? Dim vlax As cVLAX 声明未定义 vb6.0已后...

复制代码
Public Sub GetVertexs()
If StartAcad Then
Dim vlax As cVLAX
Dim ent As AcadEntity, p As Variant, arrVertexs As Variant, i As Integer
Dim xdtAs Variant, xdv As Variant
Dim Vertexs() As TVertex
Set vlax = New cVLAX
vlax.Initialize Application
On Error Resume Next
ThisDrawing.Utility.GetEntity ent, p, "请选择多段线对象:"
If Err.Number0 Then Exit Sub
On Error GoTo 0
arrVertexs = vlax.GetVertexs(ent.Handle)
If IsEmpty(arrVertexs) = False Then
    ReDim Vertexs(UBound(arrVertexs))
    For i = 0 To UBound(arrVertexs)
      Set ent = arrVertexs(i)
      Debug.Print ent.ObjectName & "-->" & ent.Handle
      ent.GetXData "", Vertexs(i).xDataType, Vertexs(i).xDataValue
    Next i
Else
    MsgBox "请选择有节点对象的多段线:"
    Exit Sub
End If
Set vlax = Nothing
Debug.Assert False   '停在这里可以查本地窗口的Vertexs变量值,调试完成此行注释掉
End If
End Sub这一段怎么放到vb6.0里运行???   Dim vlax As cVLAX   声明未定义?vb6.0已后期绑定CAD了!怎么把这一段代码, 放到vb6.0里运行???
请教高手

zzyong00 发表于 2018-10-19 14:53:00

cVLAX是一个cls扩展名的文件,是一个类,是一段代码,你得先找到它!本论坛里就有,你搜索一下!

373294296 发表于 2018-10-19 17:12:00


谢谢, 老师声明了类模块,问题已解决!!!

373294296 发表于 2018-10-28 14:46:00


vb6.0运行已经解决

373294296 发表于 2018-10-28 14:53:00


老师我这段代码,是获取二维多段线的顶点的扩展属性!
这段代码,我怎么放到vb6.0里? 放到vb6.0, 获取不到顶点的对象

zzyong00 发表于 2018-10-29 13:25:00


把测试条件、vb6工程放上来,
获取二维多线段顶点为什么要用这种方法?

373294296 发表于 2018-10-29 15:25:00


除了主实体之外还带有子实体(VERTEX),界址线的属性就存储在VERTEX

373294296 发表于 2018-10-29 15:43:00


获取二维多线段顶点为什么要用这种方法“”“”“?????老师这个图的二维多段线带子实体属性的, 如何获取它 的子实体属性呢?”

373294296 发表于 2018-10-29 15:45:00


vb6.0 的测试


zzyong00 发表于 2018-10-30 10:25:00

你好像是要用lisp执行"GetVertex"函数,这个函数在strFileName = Environ("TEMP") & "\Vertexs.lsp" 文件里,这个文件的内容由
    Open strFileName For Output As #1
       ' Print #1, UserForm1.TxtLisp.Text
    Close #1
这里写入,但很明显,没看到你写入什么内容!
页: [1]
查看完整版本: 这一段怎么放到 vb6.0里运行??? Dim vlax As cVLAX 声明未定义 vb6.0已后...