+ -
当前位置:首页 → 问答吧 → 如何将一个对话框里编辑框的内容保存到另外一个对话框里的列表控件里

如何将一个对话框里编辑框的内容保存到另外一个对话框里的列表控件里

时间:2011-11-27

来源:互联网

有列表控件的对话框的类为gewain102Dlg 另外一个为ADDDlg 
我在ADDDlg里做了个确认的响应
void CADDDlg::OnOK() 
{
CString JL;
CGewain102App * app=(CGewain102App*)AfxGetApp();
  CEdit * editl=(CEdit *)GetDlgItem(IDC_EDIT_JK);  
editl->GetWindowText(JK);
app->JK=JK;
  CDialog::OnOK();
}
在gewain102Dlg里写了
BOOL CGewain102Dlg::OnInitDialog()
{
  CString tempColName[1]={"】"};
m_ListCtrlx.SetExtendedStyle(LVS_EX_FULLROWSELECT|LVS_EX_GRIDLINES);
for(int i=0;i<1;i++)
{
m_ListCtrlx.InsertColumn(i,tempColName[i]);
m_ListCtrlx.SetColumnWidth(i,70);
}
return TRUE;
}
添加按钮的响应
void CGewain102Dlg::OnAdd() 
{
// TODO: Add your control notification handler code here
CADDDlg addDlg;
   
if (addDlg.DoModal()==IDOK)
AddItem();

}
void CGewain102Dlg::AddItem()
{
m_Count++;//之前设置的long型变量m_Count,初始化为-1
CGewain102App *app=(CGewain102App*)AfxGetApp();
m_ListCtrlx.InsertItem(m_Count,app->JK,0);
m_ListCtrlx.SetItemText(m_Count,0,app->JK);
}
为什么一执行就弹出来Debug Assertion Failed!要终止

作者: gewain   发布时间: 2011-11-27

不要让我等三年啊....

作者: gewain   发布时间: 2011-11-27

gewain102Dlg里用个SendMessage()函数负责发送消息,然后在ADDlg里定义个消息接受函数,负责添加数据到表格。如果要发送的数据内容好几项,就定义个结构体发送和接受。
在你的程序中,我没有看到JK的定义呢!成员变量?在你列的每个函数里头设个断点单步调试下,看是哪里出错了

作者: sxqinge   发布时间: 2011-11-27