指定属性页

创建 ActiveX 控件时,通常需要将其与可用于设置控件属性的属性页相关联。 控件容器使用 ISpecifyPropertyPages 接口来找出哪些属性页可用于设置控件的属性。 需要在控件上实现此接口。

若要使用 ATL 实现 ISpecifyPropertyPages,请执行以下步骤:

  1. ISpecifyPropertyPagesImpl 派生类。

  2. 向类的 COM 映射添加 ISpecifyPropertyPages 的条目。

  3. PROP_PAGE 项添加到与控件关联的每个页面的属性映射中。

注意

使用 ATL 控件向导生成标准控件时,只需将PROP_PAGE 条目添加到属性映射中。 向导会生成其他步骤所需的代码。

性能良好的容器将以与属性映射中的 PROP_PAGE 条目相同的顺序显示指定的属性页。 通常,应在属性映射中自定义页面的条目之后放置标准属性页条目,以便用户首先看到特定于控件的页面。

示例

日历控件的以下类使用 ISpecifyPropertyPages 接口告知容器可以使用自定义日期页和股票颜色页面设置其属性。

class ATL_NO_VTABLE CMyCtrl :
   OtherInterfaces
   public ISpecifyPropertyPagesImpl<CMyCtrl>
{
public:

BEGIN_COM_MAP(CMyCtrl)
   OtherComMapEntries
   COM_INTERFACE_ENTRY(ISpecifyPropertyPages)
END_COM_MAP()

BEGIN_PROP_MAP(CMyCtrl)
   OtherPropMapEntries
   PROP_PAGE(CLSID_DatePage)
   PROP_PAGE(CLSID_StockColorPage)
END_PROP_MAP()

   // Remainder of class declaration omitted.

另请参阅

属性页
ATLPages 示例