CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ObjectARX 开发指南

从属性扩展模板类派生

2022-12-31 11:12| 发布者: admin| 查看: 245| 评论: 0|来自: AutoCAD

为了减少实现工作量,从接口派生 COM 包装器类通常是有意义的。从此接口派生提供了 、 和接口的“样板”实现。使用您通过宏提供的信息来实现这些接口。IOPMPropertyExtensionImplIOPMPropertyExtensionICategorizePropertiesIPerPropertyBrowsing IOPMPropertyExtensionImplOPMPROP_MAP

以下宏在opmimp.h文件中声明:OPMPROP_MAP

  • BEGIN_OPMPROP_MAP
  • OPMPROP_ENTRY
  • OPMPROP_CAT_ENTRY
  • OPMPROP_DESC_ENTRY
  • OPMPROP_PREDEFINED_ENTRY
  • OPMPROP_ELEMENT_ENTRY
  • OPMPROP_PAGE

这些宏接受以下部分或全部参数:

nDesID

属性的说明字符串 ID

DPID

该物业的鄙视

反恐委员会

属性的类别 ID,在应用程序的字符串表资源中定义,由ICategorizeProperties::MapPropertyToCategory()

ctNameID

属性的类别名称字符串

元素标识

扩展的属性名称列表(分号分隔),由IOPMPropertyExpander::GetElementStrings()

这些字符串允许单个属性扩展为多个子属性。例如,轻量级折线的顶点扩展为两个值 X 和 Y。在这种情况下,展开的属性名称列表将为“顶点 X;顶点Y”。为可扩展属性提供的字符串数应与参数中指定的字符串数匹配。grp

预定义标识

属性的预定义字符串列表(分号分隔)的 ID,由IPerPropertyBrowsing::GetPredefinedStrings()

此列表指定单个属性的可能字符串值。这些字符串显示在下拉列表中。例如,如果此值引用的字符串为“是;否“、”是“和”否“值显示在下拉列表中。用户只能从列表中选择一个。

瓦尔斯

属性的预定义值列表(分号分隔),由IPerPropertyBrowsing::GetPredefinedValues()

这些数值对应于预定义字符串列表中的每个字符串。例如,ifis “是;否“,此值为”1;0“,则”是“的值为 1,”否“的值为 0。在“特性”选项板中选择“是”或“否”时,COM 包装器的方法将分别接收值 1 或 0。predefIDput_xxx()

若要声明枚举属性控件,应设置为以分号分隔的字符串符号列表的 ID,并设置为分配给相应符号的值的分号分隔列表。以下示例使用字符串表资源 ID IDS_ENUMSTRINGS,该 ID 已设置为字符串“One;项目字符串表中的 Two“:predefIDvalspredefID

OPMPROP_ENTRY(IDS_EnumTest, 7, PROPCAT_Test,
    IDS_CAT_NAME_Test, 0, IDS_ENUMSTRINGS,
    _ACRX_T("1;2"), 0, 1, IID_NULL, IID_NULL, "")

当用户编辑 Enum Test 属性时,下拉列表将包含“One”和“Two”,这会将属性分别设置为 1 或 2。

玻璃钢

展开的属性名称分组中的元素数,由IOPMPropertyExpander::GetElementGrouping()

此数字应等于字符串列表中指定的字符串数。例如,对于 3D 点,此值为 3,因为单个点有 X、Y 和 Z 值。对于 2D 点,它是 2。elementsID

编辑

显示属性覆盖,指定属性是可编辑还是只读

其他

CLSID为其他...组合项对话框(未使用)

中西德

CLSID for the dialogIPerPropertyBrowsing

控制单击省略号按钮时显示的对话框。使用属性页的属性示例包括填充图案名称属性和超链接属性。

省略号Txt

对话框的显示字符串IPerPropertyBrowsing

此字符串与“属性页”的省略号按钮一起显示。例如,选择图案填充对象时的“ANSI31”填充图案名称属性。

如果需要使用接口,还提供了模板类。这可以与模板类结合使用,后者仅实现 theand接口。IAcPiCategorizePropertiesIAcPiCategorizePropertiesImplIOPMPropertyExtensionImpl2IOPMPropertyExtensionIPerPropertyBrowsing


路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-5-18 04:41

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部