Поделиться через


Specifying Property Pages

При создании элемента управления ActiveX, часто требуется связать его с помощью страниц свойств, которые могут использоваться для задания свойства элемента управления. Контейнеры элементов управления используют интерфейс ISpecifyPropertyPages чтобы выяснить, страницы свойств могут использоваться для задания свойства элемента управления. Необходимо будет реализовать этот интерфейс на элементе управления.

Для реализации ISpecifyPropertyPages с использованием библиотеки ATL и предпримите следующие:

  1. Создайте производный класс от ISpecifyPropertyPagesImpl.

  2. Добавьте запись для ISpecifyPropertyPages к сопоставлению модели COM конкретного типа.

  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.

См. также

Основные понятия

Страницы свойств COM в ATL

Образец ATLPages