Класс 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.
Иерархия наследования
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