NMTBRESTORE 结构 (commctrl.h)

允许应用程序提取保存工具栏状态时放置在 NMTBSAVE 中的信息。 当应用程序收到 TBN_RESTORE 通知代码时,此结构将传递给应用程序。

语法

typedef struct tagNMTBRESTORE {
  NMHDR    hdr;
  DWORD    *pData;
  DWORD    *pCurrent;
  UINT     cbData;
  int      iItem;
  int      cButtons;
  int      cbBytesPerRecord;
  TBBUTTON tbButton;
} NMTBRESTORE, *LPNMTBRESTORE;

成员

hdr

类型: NMHDR

包含有关通知的其他信息的 NMHDR 结构。

pData

类型: DWORD*

指向包含存储的保存信息的数据流的指针。 它包含每个按钮的 Shell 定义的信息块,与应用程序定义的块交替。 应用程序还可以在 pData 的开头放置全局数据块。 应用程序定义的块的格式和长度由应用程序确定。

pCurrent

类型: DWORD*

指向应用程序定义数据的当前块的指针。 提取数据后,应用程序必须将 pCurrent 推进到块的末尾,因此它指向 Shell 定义的数据的下一个块。

cbData

类型: UINT

pData 的大小。

iItem

类型: int

值 -1 表示正在启动还原, pCurrent 将指向数据流的开头。 否则,它是从零开始的按钮索引, pCurrent 将指向当前按钮的数据。

cButtons

类型: int

按钮数的估计值。 由于估算基于数据流的大小,因此它可能不正确。 客户端应根据需要更新它。

cbBytesPerRecord

类型: int

保存每个按钮的数据所需的字节数。 还原开始时, cbBytesPerRecord 将设置为 Shell 定义的数据结构的大小。 需要按保存应用程序定义数据的结构的大小递增它。

tbButton

类型: TBBUTTON

包含当前正在还原的按钮相关信息的 TBBUTTON 结构。 应用程序必须在返回之前根据需要修改此结构。

要求

要求
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 Windows Server 2003 [仅限桌面应用]
标头 commctrl.h