NMLISTVIEW 是 Win32 API 中的一个结构体,通常用于通知消息 LVN_ITEMCHANGED、LVN_ITEMCHANGING、LVN_BEGINDRAG、LVN_BEGINRDRAG、LVN_BEGINLABELEDIT、LVN_ENDLABELEDIT 等中,与 Windows 控件中的列表视图(ListView)相关。这个结构体用于传递有关列表视图中项的改变或操作的信息。结构体的定义如下:
typedef struct tagNMLISTVIEW {
    NMHDR   hdr;
    int     iItem;
    int     iSubItem;
    UINT    uNewState;
    UINT    uOldState;
    UINT    uChanged;
    POINT   ptAction;
    LPARAM  lParam;
} NMLISTVIEW, *LPNMLISTVIEW;

结构体成员的含义如下:

  •  hdr: NMHDR 结构体,包含通知消息的标准头部信息,如消息源、消息码等。

  •  iItem: 表示与项改变或操作相关的索引。

  •  iSubItem: 表示与项改变或操作相关的子项索引。

  •  uNewState: 表示项的新状态。

  •  uOldState: 表示项的旧状态。

  •  uChanged: 表示状态发生变化的位掩码。

  •  ptAction: 表示项的位置。

  •  lParam: 表示项的应用程序定义的数据。


NMLISTVIEW 结构体通常用于处理列表视图中项的状态改变、开始拖放、开始编辑标签等操作的通知。应用程序可以通过检查结构体中的成员来获取有关项的详细信息,以便执行相应的操作。


转载请注明出处:http://www.zyzy.cn/article/detail/24923/Win32 API/Commctrl.h/NMLISTVIEW