CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

AutoCAD 2023 开发者帮助

动态属性接口

2024-5-18 19:01| 发布者: admin| 查看: 97| 评论: 0|原作者: admin|来自: AutoCAD

动态属性接口

以下接口用于实现动态属性:

  • IDynamicPropertyIDynamicProperty2
  • IPropertyManagerIPropertyManager2
  • IDynamicPropertyNotifyIDynamicPropertyNotify2
  • IPropertySource

上面列出的前三对中的每一对都显示一个传统接口名称,后跟其更现代的对应项。所有这些接口仍然有效,但旧版本的范围更加有限。、 和 接口仅适用于实体。、 和 接口可以定义和管理实体和对象的属性。IDynamicPropertyIPropertyManagerIDynamicPropertyNotifyIDynamicProperty2IPropertyManager2IDynamicPropertyNotify2

通过 和 接口,可以定义运行时属性。对于要在“属性”选项板中显示的每个动态属性,您可以从这些接口之一派生一个类。属性检查器调用派生类的方法,以获取显示属性所需的信息。IDynamicPropertyIDynamicProperty2

Before your properties can be associated with objects, however, they must be attached to an AcRxClass object. This is done through IPropertyManager, IPropertyManager2, and IPropertySource implementations. Each of these interfaces manages links between objects and AcRxClass instances, but they do so in varying ways. Figure 5 shows the interaction and multiplicities between dynamic property objects, managers, and sources, and AcRx classes.

物业经理和物业来源

或 的每个实例表示一个 .动态属性将自己注册到一个或多个或实例,从而将自己绑定到实例。 仅处理指向实例的指针,因此仅处理驻留在数据库中的实体的动态属性。 接受并返回指向 OR 实例的指针。通过支持,将动态属性管理扩展到非数据库驻留对象。IPropertyManagerIPropertyManager2AcRxClassIPropertyManagerIPropertyManager2AcRxClassIPropertyManagerIDynamicPropertyIPropertyManager2IUnknownIDynamicPropertyIDynamicProperty2IDynamicProperty2IPropertyManager2

图5 - 动态属性机制

IPropertySource对象根据传递给它们的对象根据请求生成动态属性。对象生成的属性称为“每个实例”动态属性。但是,不需要相关的对象实例。对象可以向属性检查器提供属性,即使将 null 对象传递给它也是如此。IPropertySourceIPropertySource

由于每个实例的属性是在运行时基于每个对象实例化的,因此这些属性不会注册到任何管理器对象。相反,生成它们的对象注册到一个对象,而该对象又与 .每个实例的动态属性将在标题为“实现每个实例的动态属性”的部分中进一步讨论。IPropertySourceOPMPerInstancePropertyExtensionAcRxClass

父主题:

  1. 动态属性

路过

雷人

握手

鲜花

鸡蛋

最新评论

QQ|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1   苏公网安备32011402011833)

GMT+8, 2025-3-14 08:50

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部