让ListCtrl响应鼠标不在第一列的消息

原创 2002年05月31日 09:21:00

void CMyPropertyPage2::OnClickListtablegrid(NMHDR* pNMHDR, LRESULT* pResult)
{
 // TODO: Add your control notification handler code here
 NM_LISTVIEW* pNMListView = (NM_LISTVIEW*)pNMHDR;
 CString msg;
 NMITEMACTIVATE * m_plv=(NMITEMACTIVATE*)pNMHDR;
 long mouse_x,mouse_y;
 //msg.Format("%d[%d]",pNMListView->iSubItem, m_plv->ptAction.x);
 //long i=pNMListView->iSubItem  ; //取列号

 mouse_x=m_plv->ptAction.x;
 mouse_y=m_plv->ptAction.y;
 //判断是第几行
 RECT m_rect;
 long itemrow,itemcol,i;
 for(i=m_listtablegrid.GetTopIndex( );i<m_listtablegrid.GetItemCount( );i++)
 {
  m_listtablegrid.GetItemRect(i,&m_rect,0);
  if((m_rect.top <=mouse_y)&&(m_rect.bottom >=mouse_y))
  {
   itemrow=i;
   break;
  }
  
 }
 itemcol=pNMListView->iSubItem;
 msg.Format("%d[%d]",itemcol, itemrow+1);
 //itemrow=m_listtablegrid.GetHotItem();//no use
 //itemrow=m_listtablegrid.GetSelectionMark();//nouse too must in col 0
CString oldmsg=m_listtablegrid.GetItemText (itemrow,itemcol);
 if(oldmsg!="*")
  {
 msg = "*";
 m_selectdatarray[itemrow*m_oldcols+itemcol]=1;
 }
 else
  {
  msg="";
 m_selectdatarray[itemrow*m_oldcols+itemcol]=0;
  }
 m_listtablegrid.SetItemText (itemrow,itemcol,msg);
 oldmsg=msg;
 *pResult = 0;
}

CListCtrl的主要事件及鼠标响应函数

主要事件: LVN_BEGINDRAG 鼠标左键正在被触发以便进行拖放操作(当鼠标左键开始拖拽列表视图控件中的项目时产生) LVN_BEGINRDRAG 鼠标右键正在被触发以便进行拖放操作...
  • ccfxue
  • ccfxue
  • 2016年07月17日 11:39
  • 1976

MFC消息处理时,双击鼠标左键响应单击左键消息的处理

今天做老师留下来的作业题,莫名其妙出现Bug,然后发现是MFC消息处理机制的问题,在响应鼠标双击前,会先产生一个单击鼠标消息,这里是我的解决方法。 单击响应: void CMouseView:...
  • imudges_Zy
  • imudges_Zy
  • 2016年03月17日 22:21
  • 2612

duilib鼠标键盘消息处理

一般的窗口没有处理鼠标键盘消息,而是直接返回让CPaintManagerUI去处理。(想知道duilib整体的消息处理过程,请参考本博客其他文章) 首先用自己的语言描述几个名词: 准事件控件m_p...
  • zxm342698145
  • zxm342698145
  • 2015年01月15日 16:14
  • 7719

响应鼠标消息

  • 2015年06月30日 20:04
  • 885B
  • 下载

让MFC滑块响应鼠标左键消息

网上找了一大堆的资料,都说MFC滑块不能直接自己响应鼠标左键消息,而且滑块拖动的时候,由控件发消息给其主窗口,由主窗口来相应鼠标拖动。所以必须在主窗口添加滚动条相应函数(滑块属于滚动条的一种)。 细...
  • chence19871
  • chence19871
  • 2012年03月03日 11:09
  • 3783

OpenCV中响应鼠标消息

本文转自http://blog.163.com/forever_871226/blog/static/34424308201143110442964/ #include #include #...
  • gxiaob
  • gxiaob
  • 2012年12月19日 10:14
  • 1936

CSrollBar时时响应鼠标滚动消息

初始化:   m_sbHori.SetScrollRange(1, 100); m_sbHori.SetScrollPos(1); //设置编辑框初始值数 //S...
  • qq_24343479
  • qq_24343479
  • 2016年11月08日 22:55
  • 145

OpenCV中響應鼠標消息

http://www.rosoo.net/a/201001/8301.html OpenCV中響應鼠標消息#include #include #include void onMou...
  • Augusdi
  • Augusdi
  • 2013年04月29日 23:25
  • 1397

OpenCV中響應鼠標消息

http://www.rosoo.net/a/201001/8301.html OpenCV中響應鼠標消息 #include #include #include v...
  • a771948524
  • a771948524
  • 2013年08月19日 13:45
  • 860

VC++ ListBox 响应鼠标右键消息

微软提供的 CListBox 只能响应鼠标双击消息,那如果要响应右键必须要继承 CListBox  这个,然后去响应 WM_RBUTTONUP 或 WM_RBUTTONDOWN 消息,在这个消息映射的...
  • joneeky
  • joneeky
  • 2014年04月14日 18:25
  • 2125
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:让ListCtrl响应鼠标不在第一列的消息
举报原因:
原因补充:

(最多只允许输入30个字)