NMTBRESTORE 结构体是与工具栏控件(Toolbar Control)相关的一个通知消息 TBN_RESTORE 使用的结构体。这个结构体的定义通常在 Commctrl.h 头文件中找到。

以下是 NMTBRESTORE 结构体的定义:
typedef struct tagNMTBRESTORE {
  NMHDR hdr;
  DWORD   tbButton;
  DWORD   cButtons;
  DWORD   cBytes;
  LPSTR   pbRestore;
  DWORD   cbRestore;
  UINT    cRegions;
  LPRECT  prcRegions;
} NMTBRESTORE, *LPNMTBRESTORE;

结构体的成员含义如下:

  •  hdr: 通用的通知消息头部,包括了通知的类型(code)和控件的句柄等信息。

  •  tbButton: 表示被保存或者恢复的按钮的索引。

  •  cButtons: 表示被保存或者恢复的按钮的数量。

  •  cBytes: 表示被保存或者恢复的按钮所占的字节数。

  •  pbRestore: 指向保存或者恢复按钮信息的缓冲区的指针。

  •  cbRestore: 表示缓冲区的大小(以字节为单位)。

  •  cRegions: 表示保存或者恢复的区域的数量。

  •  prcRegions: 指向保存或者恢复的区域信息的数组的指针。


在使用 TBN_RESTORE 消息时,通过检查 NMTBRESTORE 结构体的成员,可以获取关于工具栏按钮被保存或者恢复的信息。这样的机制通常用于自定义工具栏的状态保存和恢复,以便在程序重新启动或者用户界面变化时能够还原工具栏的状态。


转载请注明出处:http://www.pingtaimeng.com/article/detail/24951/Win32 API/Commctrl.h/NMTBRESTORE