我有一个包含数据行的列表控件。现在我正在尝试删除删除键上的行。我正在尝试: 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/