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


Класс IOleInPlaceActiveObjectImpl

Этот класс предоставляет методы для оказания помощи в взаимодействии между элементом управления на месте и его контейнером.

Важно!

Этот класс и его члены нельзя использовать в приложениях, выполняемых в среде выполнения Windows.

Синтаксис

template<class T>
class IOleInPlaceActiveObjectImpl

Параметры

T
Класс, производный от IOleInPlaceActiveObjectImpl.

Участники

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

Имя Описание
IOleInPlaceActiveObjectImpl::ContextSensitiveHelp Включает справку с учетом контекста. Реализация ATL возвращает E_NOTIMPL.
IOleInPlaceActiveObjectImpl::EnableModeless Включает диалоговые окна без режима. Реализация ATL возвращает S_OK.
IOleInPlaceActiveObjectImpl::GetWindow Возвращает дескриптор окна.
IOleInPlaceActiveObjectImpl::OnDocWindowActivate Уведомляет элемент управления о активации или деактивации окна документа контейнера. Реализация ATL возвращает S_OK.
IOleInPlaceActiveObjectImpl::OnFrameWindowActivate Уведомляет элемент управления о активации или деактивации окна кадра верхнего уровня контейнера. Реализация ATL возвращается
IOleInPlaceActiveObjectImpl::ResizeBorder Сообщает элементу управления, что он должен изменить размер границ. Реализация ATL возвращает S_OK.
IOleInPlaceActiveObjectImpl::TranslateAccelerator Обрабатывает сообщения акселератора меню из контейнера. Реализация ATL возвращает E_NOTIMPL.

Замечания

Интерфейс IOleInPlaceActiveObject помогает взаимодействовать между элементом управления на месте и его контейнером. Например, обмен данными об активном состоянии элемента управления и контейнера, а также информирование элемента управления о необходимости изменения размера элемента управления. Класс IOleInPlaceActiveObjectImpl предоставляет реализацию IOleInPlaceActiveObject по умолчанию и поддерживает IUnknown отправку сведений на устройство дампа в отладочных сборках.

Руководство по созданию проекта ATL в статьяхATL

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

IOleInPlaceActiveObject

IOleInPlaceActiveObjectImpl

Требования

Header: atlctl.h

IOleInPlaceActiveObjectImpl::ContextSensitiveHelp

Включает справку с учетом контекста.

HRESULT ContextSensitiveHelp(BOOL fEnterMode);

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

Возвращает E_NOTIMPL.

Замечания

См . раздел IOleWindow::ContextSensitiveHelp в пакете SDK для Windows.

IOleInPlaceActiveObjectImpl::EnableModeless

Включает диалоговые окна без режима.

HRESULT EnableModeless(BOOL fEnable);

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

Возвращает S_OK.

Замечания

См . раздел IOleInPlaceActiveObject::EnableModeless в пакете SDK для Windows.

IOleInPlaceActiveObjectImpl::GetWindow

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

HRESULT GetWindow(HWND* phwnd);

Замечания

Некоторые контейнеры не будут работать с элементом управления, который был бессерверным, даже если он в настоящее время отображается. В реализации ATL, если CComControl::m_bWasOnceWindowless член данных имеет значение TRUE, функция возвращает E_FAIL. В противном случае, если параметр *phwnd не имеет значения NULL, GetWindow назначается phwnd члену m_hWnd данных класса элемента управления и возвращается S_OK.

См . раздел IOleWindow::GetWindow в пакете SDK для Windows.

IOleInPlaceActiveObjectImpl::OnDocWindowActivate

Уведомляет элемент управления о активации или деактивации окна документа контейнера.

HRESULT OnDocWindowActivate(BOOL fActivate);

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

Возвращает S_OK.

Замечания

См. раздел IOleInPlaceActiveObject::OnDocWindowActivate в пакете SDK для Windows.

IOleInPlaceActiveObjectImpl::OnFrameWindowActivate

Уведомляет элемент управления о активации или деактивации окна кадра верхнего уровня контейнера.

HRESULT OnFrameWindowActivate(BOOL fActivate);

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

Возвращает S_OK.

Замечания

См. раздел IOleInPlaceActiveObject::OnFrameWindowActivate в пакете SDK для Windows.

IOleInPlaceActiveObjectImpl::ResizeBorder

Сообщает элементу управления, что он должен изменить размер границ.

HRESULT ResizeBorder(
    LPRECT prcBorder,
    IOleInPlaceUIWindow* pUIWindow,
    BOOL fFrameWindow);

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

Возвращает S_OK.

Замечания

См. раздел IOleInPlaceActiveObject::ResizeBorder в пакете SDK для Windows.

IOleInPlaceActiveObjectImpl::TranslateAccelerator

Обрабатывает сообщения акселератора меню из контейнера.

HRESULT TranslateAccelerator(LPMSG lpmsg);

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

Этот метод поддерживает следующие возвращаемые значения.

S_OK, если сообщение было успешно переведено.

S_FALSE, если сообщение не было переведено.

Замечания

См . раздел IOleInPlaceActiveObject::TranslateAccelerator в пакете SDK для Windows.

См. также

Класс CComControl
Интерфейсы элементов управления ActiveX
Общие сведения о классе