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


Метод IOleInPlaceObject::UIDeactivate (oleidl.h)

Деактивирует и удаляет пользовательский интерфейс активного объекта на месте.

Синтаксис

HRESULT UIDeactivate();

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

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

Код возврата Описание
E_UNEXPECTED
Произошла непредвиденная ошибка.

Комментарии

Примечания к вызывающим абонентам

Этот метод вызывается непосредственным контейнером объекта, если, например, пользователь щелкнул клиентскую область за пределами объекта.

Если контейнер вызвал IOleInPlaceObject::UIDeactivate, он должен вызвать IOleInPlaceObject::InPlaceDeactivate для правильной очистки ресурсов. Контейнер может предположить, что остановка или освобождение объекта при необходимости очищает ресурсы. Объект должен быть подготовлен для этого, если не был вызван метод IOleInPlaceObject::InPlaceDeactivate . но был вызван либо IOleInPlaceObject::UIDeactivate , либо IOleObject::Close .

Примечания для разработчиков

Такие ресурсы, как меню и окна, можно очистить или сохранить в скрытом состоянии, пока объект не будет полностью отключен вызовами IOleInPlaceObject::InPlaceDeactivate или IOleObject::Close. Приложение объекта должно вызвать IOleInPlaceSite::OnUIDeactivate перед выполнением каких-либо действий с составными меню, чтобы контейнер можно было сначала отсоединить от окна фрейма. При деактивации пользовательского интерфейса объекта на месте объект остается в состоянии готовности, чтобы его можно было быстро активировать повторно. Объект остается в этом состоянии до тех пор, пока не изменится состояние отмены документа. Затем контейнер должен вызвать IOleInPlaceObject::InPlaceDeactivate , чтобы сообщить объекту отменить его состояние отмены.

Требования

Требование Значение
Минимальная версия клиента Windows 2000 Professional [только классические приложения]
Минимальная версия сервера Windows 2000 Server [только классические приложения]
Целевая платформа Windows
Header oleidl.h

См. также раздел

IOleInPlaceObject

IOleInPlaceObject::InPlaceDeactivate

IOleInPlaceObject::ReactivateAndUndo

IOleInPlaceSite::OnUIDeactivate

IOleObject::Close