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",则条目将命名为 file0file1 等。

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
一组 CStringCString 的从零开始的索引。

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();

另请参阅

层次结构图