MFC中的List control控件
在MFC中的listcontrol控件,我做的是一个选课系统,现在我能获得选中的行的值。但是现在有一个情况就是我选中了一行,但是我不想要了,我又点了一下空的行,结果返回的...
在MFC中的list control控件,我做的是一个选课系统,现在我能获得选中的行的值。
但是现在有一个情况就是我选中了一行,但是我不想要了,我又点了一下空的行,结果返回的还是我之前选中的,请问有什么办法解决么? 展开
但是现在有一个情况就是我选中了一行,但是我不想要了,我又点了一下空的行,结果返回的还是我之前选中的,请问有什么办法解决么? 展开
2个回答
展开全部
可以响应list control控件WM_LBUTTONDOWN消息,在消息函数里面判断鼠标是否点击在一项里面,判断鼠标是否点击在一项还是空白处代码如下:
int sel=-1;
for(int i=0;i<GetItemCount( );i++)
{
CPoint pt;
GetItemPosition(i,&pt);
CRect rc;
GetItemRect(i,&rc,LVIR_BOUNDS);
if(rc.PtInRect(point))
{
sel=i;
break;
}
}
if(sel<0)//sel小于0说明鼠标点击在空白处,否则就是sel就是被选中项的索引
return;
int sel=-1;
for(int i=0;i<GetItemCount( );i++)
{
CPoint pt;
GetItemPosition(i,&pt);
CRect rc;
GetItemRect(i,&rc,LVIR_BOUNDS);
if(rc.PtInRect(point))
{
sel=i;
break;
}
}
if(sel<0)//sel小于0说明鼠标点击在空白处,否则就是sel就是被选中项的索引
return;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询