随风飘荡012 2018-09-21 02:46 采纳率: 46.7%
浏览 660
已采纳

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();
}   

}

  • 写回答

2条回答

  • threenewbee 2018-09-21 02:49
    关注

    写个最简单的,比如messagebox,看执行么?还不执行,就是你消息映射的问题,重新用classwizard映射。看你关联的是哪个的双击,是listctrl么
    如果可以触发,那么检查你代码逻辑了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 孟德尔随机化结果不一致
  • ¥20 求用stm32f103c6t6在lcd1206上显示Door is open和password:
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法