在对话框上拖一个list控件。
风格定义如下:
m_listResult.SetExtendedStyle(LVS_EX_CHECKBOXES |LVS_EX_FULLROWSELECT |LVS_EX_GRIDLINES);
在list表中插入多行数据,使得垂直滚动条可用。相应list的双击消息
void CWGregDlg::OnDblclkList(NMHDR* pNMHDR, LRESULT* pResult) {
CPoint point;
GetCursorPos(&point);
LVHITTESTINFO lvhti;
lvhti.pt = point;
int nItem = CListCtrl::SubItemHitTest(&lvhti);
if(nItem == -1)
return;
int nSubItem = lvhti.iSubItem;
if (nSubItem != 1)//只有违规相对时间列可以修改
{
CListCtrl::OnLButtonDblClk(nFlags, point);
return;
}
。。。。。。
}
双击list表中,最下方的几条数据(个数不定),也就是运行双击函数时,发生了奇怪的现象。对于最下方的几条数据point值异常(x,y均不正常),如正常应该是point.x=900,得到的却是point.x=400。从而导致nItem=-1,因而该项无法选择。最奇怪的是,如果debug进入该函数point.x的值却是正常值。该项却可以选择。
release版也同样也如此情况。
百思不得其解!