CRecentFileList
CRecentFileList 是 一 个 CObject 类 , 它 支 持 对 最 近 使 用 过 ( M R U ) 的 文 件 列 表
或 一 个 .INI 文 件 中 读 出 或 写 入 , 显 示 MRU 文 件 列 表 的 菜 单 可 以 被 更 新 。
#include <afxadv.h>
CRecentF ileList 类 成 员
COnstruction
CRecentFileList 构 造 一 个 CrecentFileList 对 象
Attributes
GetSize 获 取 M R U 文 件 列 表 中 的 文 件 数 目
Operations
Remove 从 MRU 文 件 列 表 中 移 走 一 个 文 件
Add 向 MRU 文 件 列 表 中 添 加 一 个 文 件 GetDisplayName 为 一 个 MRU 文 件 名 的 菜 单 显 示 提 供 一 个 显 示 名 称UpdateMenu 更 新 MRU 文 件 列 表 的 菜 单 显 示
ReadList 从 注 册 表 或 .INI 文 件 中 读 出 M R U 文 件 列 表
W riteList 将 MRU 文 件 列 表 写 入 注 册 表 或 .INI 文 件
Operators
Operator [ ] 在 一 个 给 定 位 置 返 回 一 个 CString 对 象
成 员 函 数
CRecentFileList::Add
virtual void Add( LPCTSTR lpszPathName );
参 数
lpszPathName
要 添 加 到 列 表 中 的 路 径 名 。
说 明
此 成 员 函 数 用 来 将 路 径 在 lpszPathName 给 定 的 文 件 添 加 到 最 近 使 用 过 ( MRU ) 文 件 列 表 中 。 此 文 件 名 将 被 添 加 到 MRU 列 表 的 最 顶 端 。 如 果 此 文 件 名 在 MRU 列 表 中 已 经 存 在 , 则 它 将 会 被 移 动 到 顶 端 。
请 参 阅 CRecentFileList::Remove , CRece n tFileList::UpdateMenu
CRece n tFileList::CRecentFileList
CRece n tFileList( UINT nStart , LPCTSTR lpszSection , LPCTSTR lpszEntryForma t, int nSize , int nMaxDispLen = AFX_ABBREV_FILENAME_LEN );
参 数
nStart
在 MRU ( 最 近 使 用 过 的 ) 文 件 列 表 的 菜 单 显 示 中 的 数 字 偏 移 。
lpszSection
指 向 注 册 表 或 应 用 程 序 的 .INI 文 件 中 用 于 MRU 文 件 列 表 读 出 或 写 入 部 分的 名 字 。
lpszEntryFormat
指 向 一 个 格 式 字 符 串 , 此 格 式 字 符 串 用 来 作 为 保 存 在 注 册 表 或 应 用 程 序
的 .INI 文 件 中 的 项 的 名 字 。
nSize
MRU 文 件 列 表 中 的 最 大 文 件 数 目 。
nMaxDispLen
可 用 于 M R U 文 件 列 表 中 的 文 件 名 的 菜 单 显 示 的 按 字 符 计 算 的 最 大 长 度 。
说 明
此 成 员 函 数 用 来 构 造 一 个 CRecentFileList 对 象 。
由 lpszEntryFormat 指 向 的 格 式 字 符 串 应 该 包 含 “ % d ” , 这 将 被 用 来 代 替 每 一个 MRU 项 的 索 引 。 例 如 , 如 果 此 格 式 字 符 串 是 “ file% d” , 则 这 些 项 将 被 命名 为 file0 , file1 等 。
CRecentFileList::GetDisplayName
BOOL GetDisplayName( CString& strName , int nIndex , LPCTSTR lpszCurDir , int nCurDir , BOOL bAtLeastName = TRUE ) conse;
返 回 值
如 果 在 MRU ( 最 近 使 用 过 的 ) 文 件 列 表 中 的 值 的 索 引 处 没 有 文 件 名 , 则 返 回
FALSE 。
参 数
strName
文 件 的 全 路 径 , 该 文 件 的 名 字 将 要 被 显 示 在 MRU 文 件 的 菜 单 列 表 中 。
nIndex
在 MRU 文 件 列 表 中 的 文 件 的 从 零 开 始 的 索 引 。
lpszCurDir
包 含 当 前 目 录 的 字 符 串 。
bAtLeastName
如 果 是 非 零 值 , 则 表 明 应 该 返 回 文 件 的 低 级 名 字 , 即 使 是 这 个 名 字 超 过了 最 大 的 显 示 长 度 ( 作 为 nMaxDispLen 参 数 传 递 给 Crecen tFileList 构 造函 数 ) 。
说 明
此 成 员 函 数 用 来 获 取 MRU 文 件 列 表 中 的 一 个 文 件 的 显 示 名 。 如 果 该 文 件 在 当前 目 录 下 , 则 函 数 不 显 示 该 目 录 。 如 果 文 件 名 太 长 了 , 则 不 显 示 目 录 和 扩 展 名 。
如 果 这 样 的 文 件 名 仍 然 太 长 , 则 除 非 bAtLeastName 是 非 零 值 , 否 则 将 显 示 名置 为 一 个 空 字 符 串 。
请 参 阅 CRecentFileList::ReadList, CRece n tFileList:: W riteList
CRece n tFileList::GetSize
int GetSize() const;
返 回 值
在 当 前 MRU ( 最 近 使 用 的 ) 文 件 列 表 中 的 文 件 数 目 。
请 参 阅 CRecentFileList::Add , CRecentFileList::Remove
CRecen t FileList::ReadList
virtual void ReadList();
此 函 数 用 来 从 注 册 表 或 应 用 程 序 的 .INI 文 件 中 读 取 最 近 使 用 过 的 ( MRU ) 文 件列 表 。
请 参 阅 CRecentFileList::WriteList
CRecen t FileList::Remove virtual void Remove( int nIndex ); 参 数
nIndex
要 被 从 M R U ( 最 近 使 用 过 的 ) 文 件 列 表 中 移 走 的 文 件 的 从 零 开 始 的 索 引 。
此 函 数 用 来 从 MRU 文 件 列 表 中 移 走 一 个 文 件 。
请 参 阅 CRecentFileList::Add , CRecentFileList::UpdateMent
CRecentFileList::UpdateMenu
virtual void UpdateMenu( CCmdUI* pCmdUI );
参 数
pCmdUI
一 个 指 向 MRU ( 最 近 使 用 过 的 ) 文 件 列 表 菜 单 的 指 针 , 该 菜 单 是 一 个
CCmdUI 对 象 。
此 函 数 用 来 更 新 MRU 文 件 列 表 的 菜 单 显 示 。
请 参 阅 CRecentFileList::Add , CRecentFileList::Remove
CRecentFileList:: W riteList
virtual void WriteList();
说 明
此 函 数 用 来 将 最 近 使 用 过 的 ( MRU ) 文 件 列 表 写 入 注 册 表 或 应 用 程 序 的 .INI 文件 。
请 参 阅 CRecentFileList::ReadList
操 作 符CRecentFileList::operator[] CString& operator[]( int nIndex ); 参 数
nIndex
在 一 个 CString 集 合 中 的 一 个 CString s 的 从 零 开 始 的 索 引 。
说 明
此 重 载 的 下 标 ( []) 操 作 符 返 回 一 个 由 nIndex 中 的 从 零 开 始 的 索 引 指 定 的 单 一的 CString 。