好吧,忘掉我上一篇文章中的所有内容
它变得简单多了
仍然需要引用TypeLineInformation(tlbinf32.dll)
- Public Sub testGetProps()
- Dim cData As Collection
- Set cData = dkb_GetProperties(ThisDrawing.ModelSpace(0)) 'select your object however suits you best
- End Sub
- Public Function dkb_GetProperties(pObject As Acad0bject) As Collection
- Dim iInterFaceInfo As InterfaceInfo
- Dim cClassInfo As TypeInfo
-
- Dim colProperties As Collection
- Dim i As Integer
-
- Set colProperties = New Collection
-
- Set iInterFaceInfo = InterfaceInfoFromObject(pObject)
- For i = 1 To iInterFaceInfo.Members.Count
- If iInterFaceInfo.Members(i).InvokeKind = INVOKE_PROPERTYGET Then
- colProperties.Add iInterFaceInfo.Members(i).Name
- End If
- Next i
- Set dkb_GetProperties = colProperties
- End Function
|