IOleInPlaceSiteEx::OnInPlaceActivateEx 方法 (ocidl.h)

由嵌入对象调用,以确定它是否需要在激活时重新绘制自身。

语法

HRESULT OnInPlaceActivateEx(
  [out] BOOL  *pfNoRedraw,
  [in]  DWORD dwFlags
);

参数

[out] pfNoRedraw

指向接收当前重绘状态的变量的指针。 如果对象在激活时不需要重绘自身,则状态为 TRUE ,否则 为 FALSE 。 无窗口对象通常不需要此参数返回的值,并且可能会传递 NULL 指针来节省容器计算此值的负担。

[in] dwFlags

指示对象是否作为无窗口对象激活。 此参数从 ACTIVATEFLAGS 枚举中获取值。 有关无窗口对象的详细信息,请参阅 IOleInPlaceSiteWindowless

返回值

如果容器允许就地激活,此方法将返回S_OK。 其他可能的返回值包括以下内容。

返回代码 说明
E_UNEXPECTED
发生意外错误。

注解

此方法替换 IOleInPlaceSite::OnInPlaceActivate。 如果使用旧方法,则对象在激活时必须始终重绘自身。

无窗口对象需要使用此方法而不是 IOleInPlaceSite::OnInPlaceActivate 来通知容器它们是否正在激活无窗口。

实施者说明

容器应仔细检查对象的失效状态、其 z 顺序、剪辑和任何其他相关参数,以确定要在 pfNoRedraw 中返回的相应值。

容器可以缓存 ACTIVATEFLAGS 枚举的值,而不是在 IOleInPlaceObjectWindowless 接口中重复调用 GetWindow 方法。

要求

要求
最低受支持的客户端 Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器 Windows 2000 Server [仅限桌面应用]
目标平台 Windows
标头 ocidl.h

另请参阅

ACTIVATEFLAGS

IOleInPlaceObjectWindowless

IOleInPlaceSite::OnInPlaceActivate

IOleInPlaceSiteEx

IOleInPlaceSiteWindowless