简单的说,就是双击列表框某行,弹出新对话框,将新对话框数据保存回列表框某行是吧?
首先说,新对话框(设置)里面信息很多,如果都在列表框显示着还好说,如果不显示,那么就需要你自己做一个数组或者结构体指针链表来保存这些数据了,列表框能存储的单行信息,除了显示的,只有一个data,无法保存更多信息。
其次,弹出对话框的信息交互,如果是DoModal模态弹出,那么一般是在主对话框的DoModal处和新对话框的OnOK函数中完成数据交互的。交互的办法,通常是在新对话框建立一个非控件关联变量,在OnOK中对该变量赋值,在if(IDOK==newDlg.DoModal())中获取该值到主对话框,并赋值列表框。
最后需要注意的是,标准MFC列表框没有修改单行显示的功能,只能DeleteItem之后InsertItem完成修改显示。