MFC 中list使用问题

来源:百度知道 编辑:UC知道 时间:2024/06/21 07:40:07
创建了一个对话框在调用对话框的时候执行以下语句
CA a;
a.m_list.InsertItem(0, "11");
a.DoModal();
m_list是一个listctrl型的,急用谢谢

不能在 DoModal之前执行对子窗口的操作。
因为这时候子窗口的句柄都还是空,没有被构建,对它执行操作都会assert的。

1.建议使用非模态对话框 new 一个然后在父窗口就能执行对子窗口操作了

2.添加数据的操作防止对话框的 OnInitDialog里面。

一般来说,调出一个子窗口后就会主要在子窗口上进行操作,你说的a.m_list.InsertItem(0, "11");无非是对控件的初始化,这样完全可以对CA类进行构造如 CA(CString str,CWnd* pParent = NULL),还要在CA类中定义一个变量 CString strtemp;用来存放构造函数中传进来的值,然后在 CA类中的OnInitDialog()函数中写
m_list.InsertItem(0, strtemp);,当然也可以传进主窗口的指针

不好说,很难说,不能说。
嫉妒stone_dongdong 太有才了。