C R ichEditView

  • 个 “ 带 格 式 编 辑 控 件 ” 是 一 个 窗 口 , 在 这 个 窗 口 中 用

    户 可 以 输 入 和 编 辑 文 本 。文 本 可 以 被 赋 予 字 母 或 段 落 的 格 式 化 , 也 可 以 包 括 嵌 入 的 OLE 对 象 。 带 格 式编 辑 控 件 为 格 式 化 文 本 提 供 了 设 计 界 面 。 但 是 , 应 用 程 序 必 须 实 现 需 要 的 用 户部 件 , 以 使 格 式 化 操 作 对 用 户 来 说 可 用 。

CRichEditView 类 与 CRichEditDoc 和 CRichEditCntrItem 一 起 , 提 供 了 M FC 文档 -视 环 境 中 的 带 格 式 编 辑 控 件 的 功 能 。 CRichEditView 保 存 文 本 和 文 本 的 格 式化 特 征 。 CRichEditDoc 保 持 视 中 的 客 户 项 的 列 表 。 CRichEditCntrItem 支 持 从 容器 方 对 OLE 客 户 项 的 访 问 。

这 个 W indows 通 用 控 件 ( 也 就 是 CRichEditCtrl 及 其 相 关 类 ) 只 对 于 运 行 在

W indow95 和 W indows NT 3.51 及 更 新 版 本 下 的 程 序 是 可 用 的 。

有 关 在 一 个 MFC 应 用 程 序 中 使 用 带 格 式 编 辑 文 档 的 例 子 , 请 参 见 WORDPAD

示 例 应 用 程 序 。

#include <afxrich.h>

请 参 阅 CRichEditDoc, CRichEditCntrItem

CR ichEditView 类 成 员

Constructor

CrichEditView 构 造 一 个 CrichEditView 对 象

Attributes

GetDocument 获 取 一 个 指 向 相 关 的 CRichEditDoc 对 象 的 指 针

GetCharFormatSelectio n

获 取 当 前 选 择 的 字 符 格 式 化 属 性

SetCharFormat 设 置 当 前 选 择 的 字 符 格 式 化 属 性

GetParaFormatSelectio n

获 取 当 前 选 择 的 段 落 格 式 化 属 性

SetParaFormat 设 置 当 前 选 择 的 段 落 格 式 化 属 性

GetTextLength 获 取 rich 编 辑 视 中 的 文 本 的 长 度

GetPaperSize 获 取 此 rich 编 辑 视 的 纸 张 大 小

续 表

SetPaperSize 设 置 此 rich 编 辑 视 的 纸 张 大 小

GetMargins 获 取 此 rich 编 辑 视 的 页 边 距

SetMargins 设 置 此 rich 编 辑 视 的 的 页 边 距

GetPrintWidth 获 取 此 rich 编 辑 视 的 的 打 印 宽 度

GetPrintRect 获 取 此 rich 编 辑 视 的 的 打 印 矩 形

GetPageRect 获 取 此 rich 编 辑 视 的 的 页 面 矩 形

GetSelectedItem 从 此 rich 编 辑 视 中 获 取 被 选 择 的 项

GetInPlaceActiveItem 获 取 此 rich 编 辑 视 中 的 当 前 现 场 激 活 的 OLE 项

GetRichEditCtrl 获 取 此 带 格 式 编 辑 控 件

Data Members

m_nBulletIndent 表 示 公 告 列 表 的 缩 进 量

m_nWordWrap 表 示 单 词 的 折 行 约 束

Operation s FindText 激 活 等 待 光 标 , 查 找 指 定 的 文 本

FindTextSimple 查 找 指 定 文 本

IsRichEditFormat 确 定 剪 贴 板 中 是 否 包 含 一 个 rich 编 辑 中 的 数 据 或

文 本 格 式

CanPaste 确 定 剪 贴 板 包 含 的 数 据 是 否 能 够 被 粘 贴 到 此 rich

编 辑 视 中

DoPaste 将 一 个 OLE 项 粘 贴 到 此 rich 编 辑 视 中

InsertItem

插 入 一 个 新 项 作 为 一 个

OLE

InsertFileAsObject

插 入 一 个 文 件 作 为 一 个

OLE

AdjustDialogPosition 移 动 一 个 对 话 框 以 使 它 不 遮 蔽 当 前 的 选 择

OnCharEffect 改 变 当 前 选 择 的 字 符 格 式

OnParaAlign 改 变 段 落 的 对 齐 方 式OnUpdateCharEffect 更 新 字 符 公 有 成 员 函 数 的 命 令 UI OnUpdateParaAlign 更 新 段 落 公 有 成 员 函 数 的 命 令 UI PrintInsideRect 格 式 化 在 给 定 矩 形 中 的 指 定 文 本PrintPage 格 式 化 给 定 页 中 的 指 定 文 本

Overridable s OnInitialUpdate 在 一 个 视 第 一 次 与 一 个 文 档 连 接 时 刷 新 这 个 视IsSelected 表 明 给 定 的 OLE 项 是 否 被 选 择 了

OnFindNext 搜 索 一 个 子 串 的 下 一 次 发 现

OnTextNotFound 在 没 有 找 到 需 要 的 文 本 时 处 理 用 户 通 知OnReplaceAll 用 一 个 新 的 字 符 串 来 替 换 所 有 的 给 定 字 符 串OnReplaceSel 替 换 当 前 的 选 择

QueryAcceptData 查 询 IDataObject 上 的 数 据OnPasteNativeObject 从 一 个 OLE 项 获 取 本 地 数 据OnPrinterChanged 设 置 给 定 设 备 的 打 印 特 征

W rapChanged 根 据 m_nWordWrap 的 值 为 此 rich 编 辑 视 调 整 目

标 输 出 设 备

GetClipboardData 为 此 rich 编 辑 视 中 的 一 个 范 围 获 取 一 个 剪 贴 板 对

GetContextMenu 获 取 一 个 用 于 按 下 右 鼠 标 按 钮 的 上 下 文 菜 单

成 员 函 数

CR ichEditView::AdjustDialogPosition void AdjustDialogPosition( CDialog* pDlg ); 参 数

pDlg

指 向 一 个 CDialog 对 象 的 指 针 。

说 明

此 函 数 用 来 移 动 给 定 的 对 话 框 以 使 它 不 会 隐 蔽 当 前 的 选 择 。

请 参 阅 C RichEditCtrl::GetSel

CR ichEditView::CanPaste

BOOL CanPaste( ) const;

返 回 值

如 果 剪 贴 板 中 包 含 的 数 据 的 格 式 是 此 rich 编 辑 视 可 以 接 收 的 , 则 返 回 非 零 值 ; 否 则 返 回 0 。

说 明

此 成 员 函 数 用 来 确 定 剪 贴 板 包 含 的 信 息 是 否 可 以 粘 贴 到 此 rich 编 辑 视 中 。

请 参 阅 C RichEditCtrl::Paste, CRichEditView::DoPaste, CRichEditView::IsRichEditFormat

CR ichEditView::CRichEditView

CRichEditView( );

说 明

此 成 员 函 数 用 来 创 建 一 个 CRichEditView 对 象 。

请 参 阅 C RichEditDoc, CRichEditCtrl

CR ichEditView::DoPaste

void DoPaste( COleDataObject& dataob j, CLIPFORMAT c f, HMETAFILEPICT

hMetaPict );

参 数

dataobj

要 粘 贴 的 COleDataObject 包 含 的 数 据 。

cf

所 希 望 的 剪 贴 板 格 式 。

hMetaPict

代 表 要 被 粘 贴 的 项 的 图 元 文 件 。

说 明

此 成 员 函 数 用 来 将 dataobj 中 的 OLE 项 粘 贴 到 rich 编 辑 文 档 /视 中 。 可 以 调 用 这个 函 数 作 为 QueryAcceptData 实 现 的 一 部 分 。

这 个 函 数 根 据 PasteSpecial 的 处 理 者 的 结 果 来 决 定 粘 贴 类 型 。 如 果 cf 是 0 ,则新 项 使 用 当 前 的 图 标 来 代 表 。 如 果 cf 是 非 零 值 并 且 hMetaPict 不 是 NULL ,则新 项 使 用 hMetaPict 作 为 它 的 代 表 。

请 参 阅 C RichEditCtrl::Paste, CRichEditView::IsRichEditFormat, CRichEditView::InsertItem

CR ichEditView::FindText