在Dialog中添加一个ListCtrl,两个问题。
1.在OnInitDialog()中,添加多列。
m_ListCtrl.InsertItem(i,code,0);
m_ListCtrl.SetItemText(i,1,account);
程序运行时为什么只能反向显示code项,account项不能反向显示。
2.如何得到鼠标选中时的列号。我用如下方法不行。
void CModifyCustomerInfoDlg::OnClickList(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
CPoint point;
unsigned int col=0,sel=0;
CString cs; sel = m_ListCtrl.HitTest(point,&col); if (col & LVHT_ONITEMLABEL)
{
cs.Format("sel=%d,col=%d",sel,col);
MessageBox(cs,NULL,MB_OK);
} *pResult = 0;
}
1.在OnInitDialog()中,添加多列。
m_ListCtrl.InsertItem(i,code,0);
m_ListCtrl.SetItemText(i,1,account);
程序运行时为什么只能反向显示code项,account项不能反向显示。
2.如何得到鼠标选中时的列号。我用如下方法不行。
void CModifyCustomerInfoDlg::OnClickList(NMHDR* pNMHDR, LRESULT* pResult)
{
// TODO: Add your control notification handler code here
CPoint point;
unsigned int col=0,sel=0;
CString cs; sel = m_ListCtrl.HitTest(point,&col); if (col & LVHT_ONITEMLABEL)
{
cs.Format("sel=%d,col=%d",sel,col);
MessageBox(cs,NULL,MB_OK);
} *pResult = 0;
}
2.List Control只能以行为基础进行选择,它没有Column选择的概念。
2、只能通过mouse的point判断了。
m_list.SendMessage(LVM_SETEXTENDEDLISTVIEWSTYLE,LVS_EX_FULLROWSELECT, LVS_EX_FULLROWSELECT);