我在对话框(CSgipConDlg类)里放了一个CListCtrl控件(IDC_SEND),现想在另一个 SGIPPRO.CPP里实现对CListCtrl控件(IDC_SEND)插入数据,正确的实现方法应该是???
解决方案 »
- 询问关于简单画线的问题
- 这个账户不用了,给另外的账户度点分!
- 散分,随便问一个问题
- 什么时候应该创建一个兼容的DC呢
- 在一个类中怎么移动定义在另一个类(对话框)中的Button
- 200分送一人只要你能提供---请进
- 怎样把字符串类型(CString)转化为CTime类型?
- 请教一个关于CDib类指针的深拷贝的问题
- 请问用什么函数对浮点数进行四舍五入?
- vc中直接用socket编程(不用CSocket,和CAsyncSocket)都用到哪些函数
- 请问一下:ADO中的RecordSet在Open打开以后记录集数据是返回到客户端内存中存储,还是存储在其它什么地方?急,谢谢!
- 为什么vc 不能直接打开word文档 (^.^)谢谢
你可以在SGIPPRO.CPP所在文件类里定义一个CListCtrl *m_p,然后在CSgipConDlg类里给这个类变量赋值就能用了。
例如在SGIPPRO.CPP中可以出现这样的代码:
pList = theApp.GetDlgListCtrl();App类中实现一个公有的函数
CListCtrl* GetDlgListCtrl()
{
return (CListCtrl*)(m_pMainDlg->GetDlgItem(IDC_LIST1));
}
一般App里面会有dialog的对象了吧
((CListCtrl*)sdlg.GetDlgItem(IDC_SEND))->InsertItem();
CSgipConDlg *g_ConDlg;
int nItem = ((CListCtrl*)g_ConDlg->GetDlgItem(IDC_SEND))->InsertItem(1, _T(""));
((CListCtrl*)g_ConDlg->GetDlgItem(IDC_SEND))->SetItemText(nItem, 1, _T("xiao"));
但是还是插不了数据
此时g_ConDlg只是一个空指针,并不是一个窗口,内部所有控件均是无效值,所以访问必定会出错
如果是模式对话框,那么必须把你的数据在new之后,DoModal之前赋值给g_ConDlg的成员变量,并在g_ConDlg的OnInitDialog内完成初始化操作
我估计你要实现的目标应该通过无模式对话框实现的。
pDlg->m_ListCtrl.InsertItem(……);即可