c++ - 当列表框有一个项目被删除时得到通知?

标签 c++ winapi mfc listbox clistbox

我使用 CListBox::SetItemData 来存储指向我的 CListBox 派生类中某些数据的指针,我希望列表框本身跟踪它并在不再需要时释放内存。

为此,我需要在每次删除项目时得到通知(包括 LB_RESETCONTENT 和所有其他可能删除项目的情况)。我可以处理一个或多个事件来实现这一目标吗?

最佳答案

由于它的所有者使用 LBS_OWNERDRAW* 样式之一绘制,您可以留意 WM_DELETEITEM ;

Sent to the owner of a list box or combo box when the list box or combo box is destroyed or when items are removed by the LB_DELETESTRING, LB_RESETCONTENT, CB_DELETESTRING, or CB_RESETCONTENT message. The system sends a WM_DELETEITEM message for each deleted item

关于c++ - 当列表框有一个项目被删除时得到通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10106698/

相关文章:

c++ - 尝试使用 ImageList 创建工具栏,但不起作用

c++ - MFC CComboBox::InitStorage 文档说明

C++ 枚举 : Assign a variable or use scope resolution?

c++ - 子类化和添加数据成员

c++ - boost::container::vector 比 std::vector 快吗?为什么?

c - 在 ListView 中添加一个新行

c++ - 使用 win32 线程的矩阵乘法

c++ - 从无模式对话框启动时 CFileDialog 卡住

c++ - CString.Format 在 32 位中崩溃

c++ - Ubuntu 12.10 中的 wxTaskBarIcon