Использование страниц свойств в приложении
Для использования страниц свойств в приложении, выполните следующие шаги:
Создайте ресурс шаблона диалоговых окон для каждой страницы свойств.Имейте в виду, что пользователь может перейти от одной страницы на другую, поэтому следует помещать за пределами каждой странице как можно последовательно.
Шаблоны диалогового окна для всех страниц не должно быть одинаковым размером.Инфраструктура использует самой большой размер страницы, чтобы определить объем пространства, которое необходимо выделить на странице свойств для страниц свойств.
При создании ресурс шаблона диалоговых окон страницы свойств необходимо указать следующие стили на странице свойства диалогового окна свойства:
Установите " поле ввода " подпись на странице Общие к тексту необходимо находиться на вкладке для этой страницы.
Задайте список Стиль на странице Стили к дочерний.
Задайте список Граница на странице Стили к Тонкая.
Убедитесь, что установлен флажок Строка заголовка на странице Стили .
Убедитесь, что установлен флажок Отключено на странице Другие стили.
Создайте CPropertyPage- производный класс, соответствующий каждому шаблону диалогового окна страницы свойств.См. раздел Добавление класса.Выберите CPropertyPage как базовый класс.
Создайте переменные-члены для хранения значений для данной страницы свойств.Процесс добавления переменные-члены на странице свойства точно такое же, как добавлять переменные-члены к диалоговому окну, поскольку это страница свойств специализированное диалоговое окно.Дополнительные сведения см. в разделе Определение переменных-членов для элементов управления диалогового окна.
Создайте объект CPropertySheet в своем исходном коде.Обычно создается объект CPropertySheet в обработчике команды, отображающий страницу свойств.Этот объект представляет всю страницу свойств.При создании режимная страница свойств с функцией DoModal, то границы предоставляют по умолчанию 3 кнопок: ОК, Отмена, и применяется.Границы не создает никаких кнопки для страниц свойств modeless, созданных с помощью функции Создать.Нет необходимости создать класс, производный от CPropertySheet если не планируется или добавить другие элементы управления (например, окно предварительный просмотр ") или немодального отобразить страницу свойств.Этот шаг необходим для страниц свойств modeless, поскольку они не содержат стандартные элементы управления, которые могут быть использованы, чтобы закрыть страницу свойств.
Для каждой страницы, добавляемый к странице свойств выполните следующее:
Создайте один объект для каждого CPropertyPage- производного класса, созданного ранее в этот процесс.
Вызов CPropertySheet::AddPage для каждой страницы.
Обычно объект, который создает CPropertySheet также создает объекты CPropertyPage на этом шаге.Однако если реализуется CPropertySheet- производный класс можно внедрять объекты CPropertyPage в объекте CPropertySheet и вызвать AddPage для каждой страницы CPropertySheet- из конструктора производного класса.AddPage добавляет объект CPropertyPage в список страниц свойств страниц, но фактически не создает окно для данной страницы.Поэтому нет необходимости ожидать создания окна страницы свойств для вызова AddPage; можно вызвать AddPage из конструктора страницы свойств.
По умолчанию если страница свойств есть несколько вкладок, чем в одной строке с размерами страницы свойств, вкладки будет стек на нескольких строках.Отключение штабелировать, вызов CPropertySheet::EnableStackedTabs с набором параметров Ложь.Необходимо вызвать EnableStackedTabs при создании страницы свойств.
Вызовите CPropertySheet::DoModal или Создать для отображения страницы свойств.Вызовите DoModal для создания страницы свойств в виде модального диалогового окна.Вызовите Создать для создания страницы свойств в качестве безрежимного диалогового окна.
Обмена данными между страницами свойств и владельцем страницы свойств.Это описано в статье Обмен данными.
Пример использования страниц свойств см. в разделе пример PROPDLG MFC без ограничений.