写个最简单的,比如messagebox,看执行么?还不执行,就是你消息映射的问题,重新用classwizard映射。看你关联的是哪个的双击,是listctrl么
如果可以触发,那么检查你代码逻辑了。
winxp vc++6 MFC listctrl 双击不响应
.h
afx_msg void OnDblClk(NMHDR* pNMHDR, LRESULT* pResult);
.cpp
ON_NOTIFY(NM_DBLCLK, IDC_LIB_TEXT_LIST, OnDblClk)
void CTextLibDlg::OnDblClk(NMHDR* pNMHDR, LRESULT* pResult)
{
m_nTreeListIndex=-1;
CWnd cwnd;
cwnd.GetDlgItem(IDD_PRO_LABEL_PAGE);
m_hWnd=NULL;
m_hWnd=cwnd.GetSafeHwnd();
if (m_hWnd!=NULL)//判断标签窗口是否打开 多个相同ID对话框打开无效,需要父句柄
{
NMITEMACTIVATE* p = ( NMITEMACTIVATE* )pNMHDR;
UINT nState = m_TextList.GetItemState ( p->iItem, STATE_TREE_MASK );
if (( nState & STATE_ROOT_COLLAPSE ) == STATE_ROOT_COLLAPSE||
(nState & STATE_ROOT_EXPAND ) == STATE_ROOT_EXPAND)
{
m_nTreeListIndex++;
for (int i=0;i<nState;i++)
{
if ( ( nState & STATE_ROOT_COLLAPSE ) == STATE_ROOT_COLLAPSE||
(nState & STATE_ROOT_EXPAND ) == STATE_ROOT_EXPAND)
m_nTreeListIndex++;
}
}
// CTextLibDlg::OnDestroy();
}
}
- 点赞
- 写回答
- 关注问题
- 收藏
- 复制链接分享
- 邀请回答