CRecentFileList 类
支持最近使用的 (MRU) 文件列表的控件。
语法
class CRecentFileList
成员
公共构造函数
名称 | 描述 |
---|---|
CRecentFileList::CRecentFileList | 构造 CRecentFileList 对象。 |
公共方法
名称 | 描述 |
---|---|
CRecentFileList::Add | 将文件添加到 MRU 文件列表。 |
CRecentFileList::GetDisplayName | 为 MRU 文件名的菜单显示提供显示名称。 |
CRecentFileList::GetSize | 检索 MRU 文件列表中的文件数。 |
CRecentFileList::ReadList | 从注册表或 .INI 文件读取 MRU 文件列表。 |
CRecentFileList::Remove | 从 MRU 文件列表中删除文件。 |
CRecentFileList::UpdateMenu | 更新 MRU 文件列表的菜单显示。 |
CRecentFileList::WriteList | 从注册表或 .INI 文件写入 MRU 文件列表。 |
公共运算符
“属性” | 描述 |
---|---|
CRecentFileList::operator [ ] | 返回位于给定位置的 CString 对象。 |
注解
可以将文件添加到 MRU 文件列表或从中删除文件,可以将文件列表写入注册表或 .INI 文件或从中读取文件列表,并且可以更新显示 MRU 文件列表的菜单。
继承层次结构
CRecentFileList
要求
标头:afxadv.h
CRecentFileList::Add
将文件添加到最近使用的 (MRU) 文件列表。
virtual void Add(LPCTSTR lpszPathName);
virtual void Add(
LPCTSTR lpszPathName,
LPCTSTR lpszAppID);
void Add(
IShellItem* pItem,
LPCTSTR lpszAppID);
void Add(
IShellLink* pLink,
LPCTSTR lpszAppID);
void Add(
PIDLIST_ABSOLUTE pidl,
LPCTSTR lpszAppID);
参数
lpszPathName
指定要添加到列表的路径名称。
lpszAppID
指定应用程序的应用程序用户模型 ID。
pItem
指定指向要添加到列表的 Shell 项的指针。
pLink
指定指向要添加到列表的 Shell 链接的指针。
pidl
指定应添加到最近使用的文档文件夹的 shell 项的 IDLIST。
注解
文件名将添加到 MRU 列表的顶部。 如果该文件名已存在于 MRU 列表中,则它将被移动到顶部。
CRecentFileList::CRecentFileList
构造 CRecentFileList
对象。
CRecentFileList(
UINT nStart,
LPCTSTR lpszSection,
LPCTSTR lpszEntryFormat,
int nSize,
int nMaxDispLen = AFX_ABBREV_FILENAME_LEN);
参数
nStart
MRU(最近使用的)文件列表菜单显示中编号的偏移量。
lpszSection
指向将 MRU 文件列表写入到其中且/或从中读取该文件列表的注册表或应用程序 .INI 文件的部分名称。
lpszEntryFormat
指向用于注册表或应用程序 .INI 文件中存储的条目名称的格式字符串。
nSize
MRU 文件列表中的最大文件数。
nMaxDispLen
MRU 文件列表中文件名的菜单显示可用的最大长度(以字符为单位)。
备注
lpszEntryFormat 指向的格式字符串应包含“%d”,用于替换每个 MRU 项的索引。 例如,如果格式字符串为 "file%d"
,则条目将命名为 file0
、file1
等。
CRecentFileList::GetDisplayName
获取 MRU 文件列表中文件的显示名称,以用于 MRU 列表的菜单显示。
virtual BOOL GetDisplayName(
CString& strName,
int nIndex,
LPCTSTR lpszCurDir,
int nCurDir,
BOOL bAtLeastName = TRUE) const;
参数
strName
其名称将显示在 MRU 文件菜单列表中的文件的完整路径。
nIndex
MRU 文件列表中文件的从零开始的索引。
lpszCurDir
保存当前目录的字符串。
nCurDir
当前目录字符串的长度。
bAtLeastName
如果为非零,则指示应返回文件的基名称,即使该名称超出最大显示长度(作为 nMaxDispLen 参数传递给 CRecentFileList
构造函数)。
返回值
如果最近使用的 (MRU) 文件列表中的指定索引处没有文件名,则为 FALSE。
备注
如果文件位于当前目录中,则函数将不显示目录。 如果文件名过长,则会去除目录和扩展名。 如果文件名仍然过长,则除非 bAtLeastName 为非零,否则显示名称将设置为空字符串。
CRecentFileList::GetSize
检索 MRU 文件列表中的文件数。
int GetSize() const;
返回值
当前最近使用的 (MRU) 文件列表中的文件数。
CRecentFileList::operator [ ]
重载的下标 ([]
) 运算符返回 nIndex 中的从零开始的索引指定的单个 CString
。
CString& operator[ ](int nindex);
参数
nIndex
一组 CString
中 CString
的从零开始的索引。
CRecentFileList::ReadList
从注册表或应用程序 .INI 文件中读取最近使用的 (MRU) 文件列表。
virtual void ReadList();
CRecentFileList::Remove
从 MRU 文件列表中删除文件。
virtual void Remove(int nIndex);
参数
nIndex
要从最近使用的 (MRU) 文件列表中删除的文件的从零开始的索引。
CRecentFileList::UpdateMenu
更新 MRU 文件列表的菜单显示。
virtual void UpdateMenu(CCmdUI* pCmdUI);
参数
pCmdUI
指向最近使用的 (MRU) 文件列表菜单的 CCmdUI 对象的指针。
CRecentFileList::WriteList
将最近使用的 (MRU) 文件列表写入注册表或应用程序的 .INI 文件中。
virtual void WriteList();