CtrlList通过postmessage处理通知插入项
CtrlList inserting item through postmessage treat notification
所以这是我的问题,我有一个CtrlList
,我想通过PostMessage
(asyncron)插入项目,因此消息LVM_INSERT_MESSAGE
,将在轮到他时进行处理,但问题是我需要为LVITEM
分配内存,这样我就不会在插入项目之前丢失它。但在退出函数后,我失去了指向分配项的指针。由于插入项创建了另一个项,我发现很难释放我为LVITEM
分配的内存。
我的解决方案是,因为LVM_INSERT_MESSAGE
发送LVN_INSERT_MESSAGE
通知,在该通知上调用一个函数,但获得lvitem的唯一方法是抛出一个lparam,但on_notify有(NMHDR *pNMHDR, LRESULT *pResult
)参数。你能给我一个解决方案来释放内存吗,我必须用postmessage插入它,不要告诉我使用send message或insertiitem函数。谢谢你。
向其他窗口发送自定义消息,并在其处理程序中添加该项目,然后释放内存。
如果列表控件已经被子类化,则不需要其他窗口,消息可以直接发送给该控件
相关文章:
- 使用C++库在Android项目中修改gradle中的cmake参数,用于插入指令的测试
- 有关插入适配器的错误。[错误]请求从 'back_insert_iterator<vector<>>' 类型转换为非标量类型
- 预处理器:插入结构名称中的前一个行号
- 在未初始化映射的情况下,将值插入到映射的映射中
- 如何在c++中只将键插入到bimap的一侧
- 如何将结构插入到集合中并打印集合的成员
- C++json插入数组
- Visual Studio 2019:插入多个C++风格的单行注释
- nlohmann-json将一个数组插入到另一个数组中
- 有效地使用std::unordered_map来插入或增加键的值
- 为字符串中每 N 个字符插入空格的函数没有按照我认为的方式工作?
- 正在插入动态数组
- 插入或删除时获取usb的dos_name
- 叮叮当当在修复时插入多个"覆盖"说明符
- 链表c++插入,所有情况都已检查,但没有任何工作
- 将重物插入std::map
- C++17 - 使用自定义分配器的节点提取/重新插入 - 适用于 clang++/libc++,但不适用于 libstd
- 函数如何通知用户它基于函数原型抛出异常?
- 在数字之间插入 + 或 - 符号以使其等于整数
- CtrlList通过postmessage处理通知插入项