继承cdialog画了一个控件,在上面放了一个listctrl,现在在 OnInitDialog里面初始化listctrl,比如插入一些值,在插入的时候老是报错,怎么回事啊?BOOL TFileDialog::OnInitDialog()
{
RefreshListCtl();
return CDialog::OnInitDialog();
}void TFileDialog::RefreshListCtl()
{
CString str;
int i = 0;
for (list<string>::iterator it = m_allFileList.begin();
it != m_allFileList.end(); ++it)
{
str.Format("%s", (*it).c_str());
LV_ITEM   lvitemAdd = {0};
lvitemAdd.mask = LVIF_TEXT;
lvitemAdd.iItem = i++ ;
lvitemAdd.iSubItem = 0;
lvitemAdd.pszText = _T("aaa");
m_list.InsertItem(&lvitemAdd); //在这里报错!!!!
}
}
如果把refreshlist放在Tfiledialog的ok按钮上,点击OK按钮,执行正常。是不是这个时候对话框上的控件还没有准备好啊?这个对话框是在资源里面画好了再添加一个类实现的。