CFileDialog

Класс CFileDialog инкапсулирует Windows общего диалогового окна файла. Общие диалоговые окна файл обеспечивают простой способ для осуществления открытие файла и файла сохранить как диалоговое окно коробки (а также другие диалоговые окна выбора файла) в соответствии с стандартами Windows.

CFileDialog "как есть" можно использовать с конструктором предусмотрено, или вы можете создать свой собственный класс диалогового окна от CFileDialog и написать конструктор для своих нужд. В любом случае эти диалоговые окна будет вести себя как стандартные диалоговые окна классов Microsoft Foundation потому, что они являются производными от класса CCommonDialog.

Чтобы использовать объект CFileDialog , сначала создайте объект с помощью конструктора CFileDialog . После того, как был построен диалогового окна, можно задать или изменить любые значения в структуре m_ofn для инициализации значений или диалоговым окном элементов управления. M_ofn структура имеет тип OPENFILENAME. Для получения дополнительной информации, смотрите OPENFILENAME структура в документации Win32 SDK.

После инициализации элементов управления диалоговым окном, вызовите функцию-член DoModal для отображения диалоговое окно "" и разрешить пользователю вводить путь и файл. DoModal возвращает ли пользователь выбрал ОК (IDOK) или кнопку Отмена (IDCANCEL).

Если DoModal возвращает IDOK, используйте один из функций-членов общественной CFileDialogдля извлечения информации, ввод пользователя.

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

Чтобы определить, произошла ли ошибка во время инициализации диалогового окна и узнать больше об ошибке можно использовать функцию Windows CommDlgExtendedError.

Уничтожение объектов CFileDialog обрабатывается автоматически. Нет необходимости называть CDialog::EndDialog.

Чтобы разрешить пользователю выбирать несколько файлов, установите флаг OFN_ALLOWMULTISELECT перед вызовом метода DoModal. Необходимо ввести имя файла буфера для размещения возвращаемый список нескольких имен файлов. Это можно сделать путем замены m_ofn.lpstrFile указатель на буфер, которую вы выделили, после построения CFileDialog, но до вызова DoModal. Кроме того необходимо задать m_ofn.nMaxFile с количеством символов в буфере, который указывает m_ofn.lpstrFile.

CFileDialog основывается на COMMDLG.DLL-файл, который поставляется с Windows версии 3.1 и более поздних.

Если новый класс, производный от CFileDialog, схема сообщений можно использовать для обработки любых сообщений. Для расширения обработки сообщений по умолчанию, класс производный от CWnd, добавить карту сообщений в новый класс и предоставляют функции-члены для новых сообщений. Вам не нужно предоставлять функция-ловушка для настройки диалогового окна.

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

Настройка функция не требуется.

Для получения дополнительных сведений об использовании CFileDialog, см. Общие классы диалогового окна в Visual C++ программист руководстве.

# include lt;afxdlgs.h>

Члены классаБазовый класс | Иерархическая схема

Index