容器:客户端项目通知

本文讨论 MFC 框架调用的可重写函数在服务器应用修改在客户端应用程序的项目文档时。

COleClientItem 定义调用以响应来自组件应用程序的请求,也称为服务器应用程序的若干可重写的函数。这些 overridables 通常作为通知。他们通知容器应用程序各种事件,例如滚动、启动或位置的更改,该,并更改用户进行,编辑或操作项。

框架通过调用 COleClientItem::OnChange,需要实现的可重写的函数通知您的更改的容器应用程序。此受保护的函数接收两个参数。第一个指定服务器更改项的原因:

通知

含义

OLE_CHANGED

OLE 项的外观发生了变化。

OLE_SAVED

该 OLE 项已保存。

OLE_CLOSED

该 OLE 项已关闭。

OLE_RENAMED

服务器文档包含该 OLE 项已重命名。

OLE_CHANGED_STATE

该 OLE 项从一种状态更改为另一个。

OLE_CHANGED_ASPECT

框架已更改 OLE 项的绘图方面。

这些值是从 OLE_NOTIFICATION 枚举,在 AFXOLE.H. 定义。

对此函数的第二个参数指定项的更改方式以及状态其输入的内容:

当第一个参数是

第二个参数

OLE_SAVEDOLE_CLOSED

不使用。

OLE_CHANGED

指定更改了 OLE 项的方面。

OLE_CHANGED_STATE

描述所输入的状态 (emptyStateloadedStateopenStateactiveStateactiveUIState)。

有关客户端项目可以采用状态的更多信息,请参见 容器:客户端项目状态

,该项目为就地编辑时,激活框架调用 COleClientItem::OnGetItemPosition 。实现对于支持就地编辑应用程序所必需的。MFC 应用程序向导提供了一个基本的实现,分配项的坐标到 CRect 对象作为参数传递到 OnGetItemPosition

在就地编辑内,如果一个 OLE 项的位置或大小更改,有关项目的位置和剪辑矩形的容器的信息必须更新,并服务器必须获取有关更改的信息。框架因此调用 COleClientItem::OnChangeItemPosition 。MFC 应用程序向导提供调用基类的功能的重写。您应编辑该该函数时的 COleClientItem的应用程序向导编写派生类,使该函数更新您的客户端项目对象保留所有信息。

请参见

参考

COleClientItem::OnChangeItemPosition

概念

容器

容器:客户端项目状态