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


Класс COleInsertDialog

Примечание.

Библиотека классов Microsoft Foundation (MFC) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.

Используется для диалогового окна OLE "Вставить объект".

Синтаксис

class COleInsertDialog : public COleDialog

Участники

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

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

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

Имя Описание
COleInsertDialog::CreateItem Создает элемент, выбранный в диалоговом окне.
COleInsertDialog::D oModal Отображает диалоговое окно "Объект вставки OLE".
COleInsertDialog::GetClassID Возвращает CLSID, связанный с выбранным элементом.
COleInsertDialog::GetDrawAspect Указывает, следует ли нарисовать элемент в виде значка.
COleInsertDialog::GetIconicMetafile Возвращает дескриптор метафайла, связанного с знаковой формой этого элемента.
COleInsertDialog::GetPathName Возвращает полный путь к файлу, выбранному в диалоговом окне.
COleInsertDialog::GetSelectionType Возвращает выбранный тип объекта.

Открытые члены данных

Имя Описание
COleInsertDialog::m_io Структура типа OLEUIINSERTOBJECT, которая управляет поведением диалогового окна.

Замечания

Создайте объект класса COleInsertDialog при вызове этого диалогового окна. COleInsertDialog После создания объекта можно использовать структуру m_io для инициализации значений или состояний элементов управления в диалоговом окне. Структура m_io имеет тип OLEUIINSERTOBJECT. Дополнительные сведения об использовании этого класса диалоговых окон см. в функции-члене DoModal .

Примечание.

Код контейнера, созданный мастером приложений, использует этот класс.

Дополнительные сведения см . в структуре OLEUIINSERTOBJECT в пакете SDK для Windows.

Дополнительные сведения о диалоговых окнах, относящихся к OLE, см. в статье "Диалоговые окна" в OLE.

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

CObject

CCmdTarget

CWnd

CDialog

CCommonDialog

COleDialog

COleInsertDialog

Требования

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

COleInsertDialog::COleInsertDialog

Эта функция создает только COleInsertDialog объект.

COleInsertDialog (
    DWORD dwFlags = IOF_SELECTCREATENEW,
    CWnd* pParentWnd = NULL);

Параметры

dwFlags
Флаг создания, содержащий любое количество следующих значений для объединения с помощью побитового оператора OR:

  • IOF_SHOWHELP Указывает, что кнопка справки будет отображаться при вызове диалогового окна.

  • IOF_SELECTCREATENEW Указывает, что при вызове диалогового окна будет выбрана переключатель "Создать новый". Это значение по умолчанию и не может использоваться с IOF_SELECTCREATEFROMFILE.

  • IOF_SELECTCREATEFROMFILE Указывает, что переключатель "Создать из файла" будет выбран изначально при вызове диалогового окна. Нельзя использовать с IOF_SELECTCREATENEW.

  • IOF_CHECKLINK Указывает, что флажок "Ссылка" будет установлен изначально при вызове диалогового окна.

  • IOF_DISABLELINK Указывает, что флажок "Ссылка" будет отключен при вызове диалогового окна.

  • IOF_CHECKDISPLAYASICON Указывает, что флажок "Значок отображения от имени" будет установлен изначально, будет отображаться текущий значок, а кнопка "Значок изменения" будет включена при вызове диалогового окна.

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

pParentWnd
Указывает на родительский или владелец объекта окна (типа CWnd), к которому принадлежит объект диалогового окна. Если значение NULL, родительское окно объекта диалогового окна устанавливается в главное окно приложения.

Замечания

Чтобы отобразить диалоговое окно, вызовите функцию DoModal .

COleInsertDialog::CreateItem

Вызовите эту функцию, чтобы создать объект типа COleClientItem , только если DoModal возвращает идентификатор IDOK.

BOOL CreateItem(COleClientItem* pItem);

Параметры

pItem
Указывает на созданный элемент.

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

Ненулевое значение, если элемент был создан; в противном случае — 0.

Замечания

Перед вызовом COleClientItem этой функции необходимо выделить объект.

COleInsertDialog::D oModal

Вызовите эту функцию, чтобы отобразить диалоговое окно "Объект вставки OLE".

virtual INT_PTR
    DoModal();

INT_PTR
    DoModal(DWORD  dwFlags);

Параметры

dwFlags
Одно из следующих значений:

COleInsertDialog::DocObjectsOnly вставляет только DocObjects.

COleInsertDialog::ControlsOnly вставляет только элементы ActiveX.

Ноль не вставляет ни элемент управления DocObject, ни элемент ActiveX. Это значение приводит к тому же реализации, что и первый прототип, указанный выше.

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

Состояние завершения диалогового окна. Одно из следующих значений:

  • Идентификатор IDOK, если диалоговое окно было успешно отображено.

  • IdCANCEL, если пользователь отменил диалоговое окно.

  • IDABORT, если произошла ошибка. Если возвращается IDABORT, вызовите функцию члена COleDialog::GetLastError , чтобы получить дополнительные сведения о типе ошибки, которая произошла. Список возможных ошибок см . в функции OleUIInsertObject в пакете SDK для Windows.

Замечания

Если вы хотите инициализировать различные элементы управления диалоговым окном, задав элементы структуры m_io , это необходимо сделать перед вызовом DoModal, но после создания объекта диалогового окна.

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

COleInsertDialog::GetClassID

Вызовите эту функцию, чтобы получить CLSID, связанную с выбранным элементом, только если DoModal возвращает идентификатор IDOK и тип COleInsertDialog::createNewItemвыбора.

REFCLSID GetClassID() const;

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

Возвращает CLSID, связанный с выбранным элементом.

Замечания

Дополнительные сведения см. в разделе CLSID Key in the Windows SDK.

COleInsertDialog::GetDrawAspect

Вызовите эту функцию, чтобы определить, решил ли пользователь отобразить выбранный элемент в виде значка.

DVASPECT GetDrawAspect() const;

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

Метод, необходимый для отрисовки объекта.

  • DVASPECT_CONTENT возвращается, если флажок значка отображения как не установлен.

  • DVASPECT_ICON возвращается, если установлен флажок "Значок отображения как".

Замечания

Вызовите эту функцию, только если DoModal возвращает идентификатор IDOK.

Дополнительные сведения о аспекте рисования см. в структуре данных FORMATETC в пакете SDK для Windows.

COleInsertDialog::GetIconicMetafile

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

HGLOBAL GetIconicMetafile() const;

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

Дескриптор метафайла, содержащего знаковый аспект выбранного элемента, если флажок "Значок отображения как значок" установлен при закрытии диалогового окна, нажав кнопку "ОК", в противном случае — ЗНАЧЕНИЕ NULL.

COleInsertDialog::GetPathName

Вызовите эту функцию, чтобы получить полный путь к выбранному файлу, только если DoModal возвращает идентификатор IDOK и тип выбора не COleInsertDialog::createNewItemявляется.

CString GetPathName() const;

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

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

COleInsertDialog::GetSelectionType

Вызовите эту функцию, чтобы получить тип выделения, выбранный при закрытии диалогового окна вставки объекта, нажав кнопку "ОК".

UINT GetSelectionType() const;

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

Тип выделенного элемента.

Замечания

Значения возвращаемого Selection типа задаются типом COleInsertDialog перечисления, объявленным в классе.

enum Selection {
    createNewItem,
    insertFromFile,
    linkToFile
    };

Краткое описание следующих значений:

  • COleInsertDialog::createNewItem Выбрана переключатель "Создать".

  • COleInsertDialog::insertFromFile Выбрана переключатель "Создать из файла", а флажок "Ссылка" не установлен.

  • COleInsertDialog::linkToFile Выбрана переключатель "Создать из файла" и установлен флажок "Ссылка".

COleInsertDialog::m_io

Структура типа OLEUIINSERTOBJECT, используемая для управления поведением диалогового окна "Вставка объекта".

OLEUIINSERTOBJECT m_io;

Замечания

Элементы этой структуры можно изменять напрямую или через функции-члены.

Дополнительные сведения см . в структуре OLEUIINSERTOBJECT в пакете SDK для Windows.

См. также

Пример OCLIENT MFC
Класс COleDialog
Диаграмма иерархии
Класс COleDialog