CListCtrl:在HeaderControl上获取DblClick

时间:2019-03-12 13:56:04

标签: mfc clistctrl

好的,这是我在MFC中写东西的时候,所以请耐心等待我。我有一个从CListCtrl派生的类“ CMyListCtrl”,只想知道是否已在标题上双击(左)列标题。

所以我添加到了MESSAGE_MAP:

ON_NOTIFY(HDN_ITEMDBLCLICK, 0, OnDblClickHeader)

和CMyListCltr的函数:

void CMyListCtrl::OnDblClickHeader(NMHDR* pNMHDR, LRESULT* pResult)
{
    HD_NOTIFY *phdn = (HD_NOTIFY *)pNMHDR;
    // TODO: Add your control notification handler code here
    *pResult = 0;
}

但是:永远不会调用OnDblClickHeader。我尝试过:

ON_NOTIFY
ON_NOTIFY_EX
ON_NOTIFY_RANGE (0-0xffff)
ON_NOTIFY_REFLECT
ON_NOTIFY_REFLECT_EX

...但是:从未调用过OnDblClickHeader。

可能是什么问题?标头是否必须具有特殊样式?

1 个答案:

答案 0 :(得分:2)

根据redis,您必须确保控件遵循以下语句:
Only header controls that are set to the HDS_BUTTONS style send this notification code.