GetObject 方法 (ActiveX)
获取字典中的对象,给定对象的名称(关键字)。 支持的平台:仅限 Windows 言论例如,在以下字典中查询名称“SecondKeyword”将返回对象“Object2”: 我的词典 关键字 - 对象 FirstKeyword - 对象 1 SecondKeyword - 对象 2 例子VBA: Sub Example_GetObject()
' This example creates a dictionary and adds
' a custom object to that dictionary. It then
' returns the object using GetObject.
Dim dictObj As AcadDictionary
Set dictObj = ThisDrawing.Dictionaries.Add("TEST_DICTIONARY")
' Load the ARX application that defines the custom object.
' Note: The application listed here does not exist and
' will cause an error when run. Change the application name
' to the path and name of your ARX Application.
On Error GoTo ERRORHANDLER
ThisDrawing.Application.LoadArx "MyARXApp.dll"
' Create the custom object in the dictionary
Dim keyName As String
Dim className As String
Dim customObj As AcadObject
keyName = "OBJ1"
className = "CAsdkDictObject"
Set customObj = dictObj.AddObject(keyName, className)
' Find the object
Dim tempObj As Object
Set tempObj = dictObj.GetObject(keyName)
ERRORHANDLER:
MsgBox Err.Description, , "GetObject Example"
End Sub
可视化 LISP: (vl-load-com)
(defun c:Example_GetObject()
;; This example creates a dictionary and adds
;; a custom object to that dictionary.
(setq acadObj (vlax-get-acad-object))
(setq doc (vla-get-ActiveDocument acadObj))
(setq dictionaries (vla-get-Dictionaries doc))
(setq dictObj (vla-Add dictionaries "TEST_DICTIONARY"))
;; Load the ObjectARX application that defines the custom object.
;; Note: The application listed here does not exist and
;; will cause an error when run. Change the application name
;; to the path and name of your ObjectARX application.
(vla-LoadArx acadObj "MyARXApp.dll")
;; Create the custom object in the dictionary
(setq keyName "OBJ1")
(setq className "CAsdkDictObject")
(setq customObj (vla-AddObject dictObj keyName className))
;; Find the object
(setq tempObj (vla-GetObject dictObj keyName))
)
|
|Archiver|CAD开发者社区
( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2025-10-29 00:50
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.