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


Класс COlePropertyPage

Используется для отображения свойств пользовательского элемента управления в графическом интерфейсе подобно диалоговому окну.

Синтаксис

class AFX_NOVTABLE COlePropertyPage : public CDialog

Участники

Открытые конструкторы

Имя Описание
COlePropertyPage::COlePropertyPage Формирует объект COlePropertyPage.

Открытые методы

Имя Описание
COlePropertyPage::GetControlStatus Указывает, изменил ли пользователь значение в элементе управления.
COlePropertyPage::GetObjectArray Возвращает массив объектов, редактируемых страницей свойств.
COlePropertyPage::GetPageSite Возвращает указатель на интерфейс страницы IPropertyPageSite свойств.
COlePropertyPage::IgnoreApply Определяет, какие элементы управления не позволяют включить кнопку "Применить".
COlePropertyPage::IsModified Указывает, изменил ли пользователь страницу свойств.
COlePropertyPage::OnEditProperty Вызывается платформой, когда пользователь редактирует свойство.
COlePropertyPage::OnHelp Вызывается платформой, когда пользователь вызывает справку.
COlePropertyPage::OnInitDialog Вызывается платформой при инициализации страницы свойств.
COlePropertyPage::OnObjectsChanged Вызывается платформой при выборе другого элемента управления OLE с новыми свойствами.
COlePropertyPage::OnSetPageSite Вызывается платформой, когда кадр свойств предоставляет сайт страницы.
COlePropertyPage::SetControlStatus Задает флаг, указывающий, изменил ли пользователь значение в элементе управления.
COlePropertyPage::SetDialogResource Задает ресурс диалогового окна страницы свойств.
COlePropertyPage::SetHelpInfo Задает краткий текст справки страницы свойств, имя файла справки и контекст справки.
COlePropertyPage::SetModifiedFlag Задает флаг, указывающий, изменил ли пользователь страницу свойства.
COlePropertyPage::SetPageName Задает имя страницы свойств (подпись).

Замечания

Например, страница свойств может включать элемент управления редактирования, позволяющий пользователю просматривать и изменять свойство подпись элемента управления.

Каждое пользовательское или стандартное свойство управления может иметь диалоговое окно, позволяющее пользователю элемента управления просматривать текущее значение свойства и изменять это значение при необходимости.

Дополнительные сведения об использовании COlePropertyPageсм. в статье ActiveX Controls: Property Pages.

Иерархия наследования

CObject

CCmdTarget

CWnd

Cdialog

COlePropertyPage

Требования

Заголовок: afxctl.h

COlePropertyPage::COlePropertyPage

Формирует объект COlePropertyPage.

COlePropertyPage(
    UINT idDlg,
    UINT idCaption);

Параметры

idDlg
Идентификатор ресурса шаблона диалогового окна.

idCaption
Идентификатор ресурса подпись страницы свойств.

Замечания

При реализации подкласса конструктор подкласса COlePropertyPageдолжен использовать COlePropertyPage конструктор, чтобы определить ресурс диалогового шаблона, на котором основана страница свойств, и строковый ресурс, содержащий его подпись.

COlePropertyPage::GetControlStatus

Определяет, изменил ли пользователь значение элемента управления страницы свойств с указанным идентификатором ресурса.

BOOL GetControlStatus(UINT nID);

Параметры

Nid
Идентификатор ресурса элемента управления страницей свойств.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если значение элемента управления было изменено; в противном случае ЗНАЧЕНИЕ FALSE.

COlePropertyPage::GetObjectArray

Возвращает массив объектов, редактируемых страницей свойств.

LPDISPATCH* GetObjectArray(ULONG* pnObjects);

Параметры

pnObjects
Указатель на целое число без знака, которое получит количество объектов, редактируемых страницей.

Возвращаемое значение

Указатель на массив указателей IDispatch , которые используются для доступа к свойствам каждого элемента управления на странице свойств. Вызывающий объект не должен выпускать эти указатели интерфейса.

Замечания

Каждый объект страницы свойств поддерживает массив указателей на IDispatch интерфейсы объектов, редактируемых страницей. Эта функция задает аргумент pnObjects в число элементов в этом массиве и возвращает указатель на первый элемент массива.

COlePropertyPage::GetPageSite

Возвращает указатель на интерфейс страницы IPropertyPageSite свойств.

LPPROPERTYPAGESITE GetPageSite();

Возвращаемое значение

Указатель на интерфейс страницы IPropertyPageSite свойств.

Замечания

Элементы управления и контейнеры сотрудничают, чтобы пользователи могли просматривать и изменять свойства элемента управления. Элемент управления предоставляет страницы свойств, каждый из которых является объектом OLE, который позволяет пользователю изменять связанный набор свойств. Контейнер предоставляет кадр свойств, отображающий страницы свойств. Для каждой страницы кадр свойств предоставляет сайт страницы, который поддерживает IPropertyPageSite интерфейс.

COlePropertyPage::IgnoreApply

Определяет, какие элементы управления не позволяют включить кнопку "Применить".

void IgnoreApply(UINT nID);

Параметры

Nid
Идентификатор элемента управления, который необходимо игнорировать.

Замечания

Кнопка "Применить" страницы свойств включена только при изменении значений элементов управления страницей свойств. Используйте эту функцию, чтобы указать элементы управления, которые не вызывают включение кнопки "Применить" при изменении их значений.

COlePropertyPage::IsModified

Определяет, изменил ли пользователь любые значения на странице свойств.

BOOL IsModified();

Возвращаемое значение

Значение TRUE, если страница свойства была изменена.

COlePropertyPage::OnEditProperty

Платформа вызывает эту функцию, когда нужно изменить определенное свойство.

virtual BOOL OnEditProperty(DISPID dispid);

Параметры

Dispid
Идентификатор диспетчера редактируемого свойства.

Возвращаемое значение

Реализация по умолчанию возвращает FALSE. Переопределения этой функции должны возвращать ЗНАЧЕНИЕ TRUE.

Замечания

Вы можете переопределить его, чтобы задать фокус соответствующим элементом управления на странице. Реализация по умолчанию ничего не делает и возвращает FALSE.

COlePropertyPage::OnHelp

Платформа вызывает эту функцию, когда пользователь запрашивает справку по сети.

virtual BOOL OnHelp(LPCTSTR lpszHelpDir);

Параметры

lpszHelpDir
Каталог, содержащий файл справки страницы свойств.

Возвращаемое значение

Реализация по умолчанию возвращает FALSE.

Замечания

Переопределите его, если страница свойств должна выполнить какое-либо специальное действие, когда пользователь обращается к справке. Реализация по умолчанию ничего не делает и возвращает значение FALSE, которое указывает платформе вызывать WinHelp.

COlePropertyPage::OnInitDialog

Платформа вызывает эту функцию при инициализации диалогового окна страницы свойств.

virtual BOOL OnInitDialog();

Возвращаемое значение

Реализация по умолчанию возвращает FALSE.

Замечания

Переопределите его, если при инициализации диалогового окна требуется какое-либо специальное действие. Вызовы CDialog::OnInitDialog реализации по умолчанию и возвращает ЗНАЧЕНИЕ FALSE.

COlePropertyPage::OnObjectsChanged

Вызывается платформой при выборе другого элемента управления OLE с новыми свойствами.

virtual void OnObjectsChanged();

Замечания

При просмотре свойств элемента управления OLE в среде разработчика диалоговое окно без режима используется для отображения страниц свойств. Если выбран другой элемент управления, для нового набора свойств необходимо отобразить другой набор страниц свойств. Платформа вызывает эту функцию, чтобы уведомить страницу свойства об изменении.

Переопределите эту функцию, чтобы получать уведомления об этом действии и выполнять какие-либо специальные действия.

COlePropertyPage::OnSetPageSite

Платформа вызывает эту функцию, когда кадр свойств предоставляет сайт страницы свойств.

virtual void OnSetPageSite();

Замечания

Реализация по умолчанию загружает подпись страницы и пытается определить размер страницы из ресурса диалогового окна. Переопределите эту функцию, если страница свойств требует дальнейших действий; переопределение должно вызывать реализацию базового класса.

COlePropertyPage::SetControlStatus

Изменяет состояние элемента управления страницей свойств.

BOOL SetControlStatus(
    UINT nID,
    BOOL bDirty);

Параметры

Nid
Содержит идентификатор элемента управления страницы свойств.

bDirty
Указывает, было ли изменено поле страницы свойств. Установите значение TRUE, если поле было изменено, значение FALSE, если оно не было изменено.

Возвращаемое значение

ЗНАЧЕНИЕ TRUE, если задан указанный элемент управления; в противном случае ЗНАЧЕНИЕ FALSE.

Замечания

Если состояние элемента управления страницей свойств грязное при закрытии страницы свойств или нажатии кнопки "Применить", свойство элемента управления будет обновлено соответствующим значением.

COlePropertyPage::SetDialogResource

Задает ресурс диалогового окна страницы свойств.

void SetDialogResource(HGLOBAL hDialog);

Параметры

hDialog
Обработайте ресурс диалогового окна страницы свойств.

COlePropertyPage::SetHelpInfo

Задает сведения подсказки, имя файла справки и контекст справки для страницы свойств.

void SetHelpInfo(
    LPCTSTR lpszDocString,
    LPCTSTR lpszHelpFile = NULL,
    DWORD dwHelpContext = 0);

Параметры

lpszDocString
Строка, содержащая краткие сведения справки для отображения в строке состояния или другом расположении.

lpszHelpFile
Имя файла справки страницы свойств.

dwHelpContext
Контекст справки для страницы свойств.

COlePropertyPage::SetModifiedFlag

Указывает, изменил ли пользователь страницу свойств.

void SetModifiedFlag(BOOL bModified = TRUE);

Параметры

bModified
Задает новое значение для измененного флага страницы свойств.

COlePropertyPage::SetPageName

Задает имя страницы свойств, которое кадр свойств обычно отображается на вкладке страницы.

void SetPageName(LPCTSTR lpszPageName);

Параметры

lpszPageName
Указатель на строку, содержащую имя страницы свойств.

См. также

Пример MFC CIRC3
Пример TESTHELP MFC
Класс CDialog
Диаграмма иерархии
Класс CDialog