【MFC笔记】列表控件CListctrl中,通过右键修改某行数据

1、在之前的项目中添加,右键鼠标菜单,第二个改为修改,添加信息。

【MFC笔记】列表控件CListctrl中,通过右键修改某行数据

2、消息响应函数中,先获取鼠标点击的行号

int nItem = m_List.GetSelectionMark();//确定选中行的行号

3、新建一个对话框实例(之前创建的Do_Add 类)

    INT_PTR nRes; // 用于后面保存 DoModal 函数的返回值
    Do_Add tipDlg; // 构造对话框类 CTipDlg 的实例

4、将列表中的数据赋值给对话框中的文本编辑框

    tipDlg.Vtime = m_List.GetItemText(nItem, 0);//此行的第一列赋值给第一个控件
    tipDlg.Hteam_Name = m_List.GetItemText(nItem, 1);//此行的第2列赋值给第2个控件
    CString sHteam_POINT = m_List.GetItemText(nItem, 2);//第3/5个控件是int类型的,需要编程字符串类型才能传递给控件
    tipDlg.Hteam_Point = _ttoi(sHteam_POINT);//字符串转为int函数“_ttoi”
    tipDlg.Vteam_Name = m_List.GetItemText(nItem, 3);
    CString sVteam_POINT = m_List.GetItemText(nItem, 4);
    tipDlg.Vteam_Point = _ttoi(sVteam_POINT);

5、弹出对话框,并判断是否点确定,以及是否把数据修改好

【MFC笔记】列表控件CListctrl中,通过右键修改某行数据

6、如果确定保存,将数据保存回对应的列表单元格中。

【MFC笔记】列表控件CListctrl中,通过右键修改某行数据