c++ - 列表控件在删除键按下时删除行

标签 c++ mfc

我有一个包含数据行的列表控件。现在我正在尝试删除删除键上的行。我正在尝试: LVN_DELETEITEM 如下:

Afx 消息:

afx_msg void OnLvnDeleteitemList(NMHDR *pNMHDR, LRESULT *pResult);

消息映射:

ON_NOTIFY(LVN_DELETEITEM, IDC_LIST_ACQUISITION_SETTINGS, &MeasureDialog::OnLvnDeleteitemList)

OnLvnDeleteitemList 的实现:

void MeasureDialog::OnLvnDeleteitemList(NMHDR *pNMHDR, LRESULT *pResult)
{
  LPNMLISTVIEW pNMLV = reinterpret_cast<LPNMLISTVIEW>(pNMHDR);
    // TODO: Add your control notification handler code here
  ReportMessage(L"Deleted");
  *pResult = 0;
}

但我永远不会进入 OnLvnDeleteitemList 方法。有什么问题吗?

最佳答案

留言LVN_DELETEITEM明确指出:

Notifies a list-view control's parent window that an item is about to be deleted.

这意味着,当项目被删除时,将发送通知消息。按删除键不会调用此方法。您需要自己处理 Delete 键消息 ( WM_KEYDOWN ),然后调用 CListCtrl::DeleteItem

关于c++ - 列表控件在删除键按下时删除行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39078866/

相关文章:

C++ 在哪里初始化静态常量

c++ - 赋值运算符和临时运算符

c++ - 具有多个框架/页面的 QWebView 共享相同的 session 数据

c++ - 在跨平台 Gtk 应用程序中嵌入 Web 浏览器

c++ - 如何将按钮按下消息通知父对话框

c++ - 在 mfc 中调整(通过拖动)对话框窗口大小时,内存资源使用率上升

c++ - 如何使用 C++ 在 Windows 中添加虚拟文件夹

C++ GDI+ 选择调色板

c++ - 与 Microsoft CRT 和 OpenMP 静态链接

c++ - CRichEditCtrl 不允许编辑将其放置在 160560 字节以上?