CAD开发者社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

ObjectARX 开发指南

属性检查器中的每个属性自定义

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

除了自定义标准属性检查器控件的外观外,属性源还可以为其每个单独的属性提供显示说明。每个属性的自定义允许您

  • 提供您自己的 ActiveX 编辑控件
  • 定义显示在媒体资源编辑器左侧的图标
  • 为省略号按钮指定自定义位图
  • 更改文本颜色
  • 放大属性的显示,使其覆盖属性检查器网格中的多行
  • 设置相对属性权重

对象实现接口以基于每个属性自定义显示。通过从模板类派生并声明每个属性的显示映射,可以毫不费力地完成此操作。要自定义此实现,只需在地图中列出自定义设置即可。每个映射条目为单个属性提供以下信息:IAcPiPropertyDisplayIAcPiPropertyDisplayImplIAcPiPropertyDisplayImplIAcPiPropertyDisplay

  • 该物业的DISPID
  • 自定义 ActiveX 编辑控件(可选)PROGID
  • 左图标资源 ID(可选)
  • 左图标类型(可选)
  • 省略号位图类型(可选)
  • 省略号位图资源 ID(可选)
  • 文本颜色,表示为OLE_COLOR(可选)
  • 全视角显示开关
  • 高度,以行数为单位
  • 属性重量

例如,以下地图将属性的颜色设置为红色 ():MyProp0x000000ff

BEGIN_PERPROPDISPLAY_MAP()
PROP_DISP_ENTRY(DISP_MYPROP, NULL, NULL, NULL, NULL, NULL,
0x000000ff, FALSE, 0, 0)
END_PERPROPDISPLAY_MAP()

对于静态属性,属性检查器会查询对象或命令的接口以获取指向该接口的指针。对于动态属性,将查询此指针的任一理论接口。如果获取了有效的指针,则属性检查器将调用其方法来确定每个属性的自定义显示属性。调用的一种方法是。如果对象希望使用自定义 ActiveX 控件编辑其属性,则对象实现此方法。属性检查器始终在尝试分配库存控制之前参考此方法。IUnknownIAcPiPropertyDisplayIDynamicPropertyIDynamicProperty2GetCustomPropertyCtrl()

有关自定义动态属性显示的其他信息,请参阅实现动态属性部分。


路过

雷人

握手

鲜花

鸡蛋

最新评论

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

GMT+8, 2024-5-19 13:18

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

返回顶部