NMTBSAVE 结构 (commctrl.h)
当应用程序收到 TBN_SAVE 通知代码时,此结构将传递给应用程序。 它包含有关当前正在保存的按钮的信息。 应用程序可以修改成员的值以保存其他信息。
语法
typedef struct tagNMTBSAVE {
NMHDR hdr;
DWORD *pData;
DWORD *pCurrent;
UINT cbData;
int iItem;
int cButtons;
TBBUTTON tbButton;
} NMTBSAVE, *LPNMTBSAVE;
成员
hdr
类型: NMHDR
包含有关通知的其他信息的 NMHDR 结构。
pData
类型: DWORD*
指向用于存储保存信息的数据流的指针。 完成后,它将包含每个按钮的 Shell 定义信息块,并与应用程序定义的块交替显示。 应用程序还可以选择将全局数据块放置在 pData 的开头。 应用程序定义的块的格式和长度由应用程序确定。 开始保存时,Shell 将传递 cbData 中所需的内存量,但不分配内存。 必须为 pData 分配足够的内存来保存数据,以及 Shell 的内存。
pCurrent
类型: DWORD*
指向数据流未使用部分开头的指针。 应在此处加载数据,然后将 pCurrent 前进到剩余未使用部分的开头。 然后,Shell 将加载下一个按钮的信息、前进 pCurrent 等。
cbData
类型: UINT
数据流的大小。 开始保存时, cbData 将设置为 Shell 所需的数据量。 应将其更改为分配的总金额。
iItem
类型: int
此参数通常是当前保存的按钮的从零开始的索引。 它设置为 -1,表示正在开始保存。
cButtons
类型: int
按钮数的估计值。 由于它基于数据流的大小,因此它可能不正确。 客户端应根据需要更新它。
tbButton
类型: TBBUTTON
包含当前保存的按钮相关信息的 TBBUTTON 结构。
要求
最低受支持的客户端 | Windows Vista [仅限桌面应用] |
最低受支持的服务器 | Windows Server 2003 [仅限桌面应用] |
标头 | commctrl.h |