IOleDocumentView::UIActivate 方法 (docobj.h)

激活或停用文档视图的用户界面元素,例如菜单、工具栏和快捷键。

语法

HRESULT UIActivate(
  [in] BOOL fUIActivate
);

参数

[in] fUIActivate

如果 为 TRUE,则视图将激活其用户界面。 如果 为 FALSE,则视图将停用其用户界面。

返回值

此方法在成功时返回S_OK。 其他可能的返回值包括以下内容。

返回代码 说明
E_FAIL
此操作失败。
E_OUTOFMEMORY
可用于操作的内存不足。
E_UNEXPECTED
发生了意外错误。

备注

给调用方的说明

在调用 IOleDocumentView::SetInPlaceSite 之前调用此方法将返回E_UNEXPECTED,因为视图必须先与视图网站关联,然后才能激活自身。

IOleDocumentView::UIActivate 作为激活序列的一部分调用时,调用应在调用 IOleDocumentView::SetRectIOleDocumentView::SetRectComplex 之前调用,否则视图维度将不考虑工具栏空间。

若要停用视图,容器应调用 IOleDocumentView::Show with FALSE,后跟 IOleDocumentView::UIActivate with FALSE

实施者说明

此方法的实现应体现以下伪代码。
if (fActivate)
    {
    UI activate the view (do menu merging, show frame level tools, process accelerators)
    Take focus, and bring the view window forward.
    }
else
    call IOleInPlaceObject::UIDeactivate on this view

此外,视图可以并且应该参与扩展 的“帮助 ”菜单合并。

文档对象的所有视图都必须支持就地激活。 E_NOTIMPL不是可接受的返回值。

要求

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

另请参阅

IOleDocumentView

IOleDocumentView::SetInPlaceSite

IOleDocumentView::SetRect

IOleDocumentView::SetRectComplex

IOleDocumentView::Show