| 查看: 1190 | 回复: 5 | |||
[交流]
【求助】CListCtrl列表框中数据保存,读取问题?(楼主取消)
|
|
基于对话框建立的工程,里面包含多个对话框。 在其中一个对话框上添加CListCtrl列表框,列表框有5列,内容通过CEdit框输入获得; 添加多行数据后,要保存添加的这些数据(不是保存到硬盘上);以便后面使用这些数据。 在另一个对话框中添加下拉控件,里面的内容是上面列表框中的第2列,相当于动态添加的。 问:如何保存和读取这样的数据? 有一个想法:定义一个结构体,把数据都存放在结构体里面,下拉控件到这个结构体里面找所需要的列数据。 不知道是否可以,主要是不会编程,希望给出具体代码。 [ Last edited by ben_ladeng on 2011-3-25 at 14:14 ] |
» 猜你喜欢
面上有专家说实验设备不是我们单位的
已经有8人回复
科研求助
已经有4人回复
博士去二本高校当辅导员,如何调整心态?
已经有11人回复
江苏省自然基金 什么时候出结果
已经有6人回复
闲聊
已经有3人回复
初秋的晨风
已经有6人回复
» 本主题相关价值贴推荐,对您同样有帮助:
【求助】DSC软件安装和读取数据问题
已经有4人回复
【求助】matlab中保存计算数据的问题
已经有8人回复
» 抢金币啦!回帖就可以得到:
西南交通大学医学院2027年接收推荐免试攻读研究生(含直博生)
+2/468
西南交通大学医学院2027年接收推荐免试攻读研究生(含直博生)
+2/278
西南交通大学医学院2027年接收推荐免试攻读研究生(含直博生)
+2/274
西南交通大学医学院2027年接收推荐免试攻读研究生(含直博生)
+2/272
西南交通大学医学院2027年接收推荐免试攻读研究生(含直博生)
+2/272
招收大湾区大学-哈工深联培博士1名
+1/184
山东征女友,坐标济南
+1/42
深圳大学应用技术学院招聘凝聚态物理博士后
+1/20
深圳大学2027级光电信息工程/物理学研究生推免
+1/18
【BM特刊征稿】生物功能凝胶(2026免APC,Scopus收录)
+1/17
招收2027年-申请考核博士生-仿生材料/生物能源方向
+1/15
组织再生生物材料专题(适配再生医学、免疫材料方向)Scopus期刊,免APC
+1/13
【科研投稿分享】Scopus收录,BM生物功能材料期刊收稿范围(附免APC窗口期)
+1/12
招聘材料计算,分子动力学模拟相关讲师
+1/3
Paris Saclay university, Dallerac教授团队招收2027CSC–Saclay合作奖学金博士生
+1/2
上海交大刘苏萌课题组招收集成电路专项硕士生(ALD前驱体方向,头部企业联培)
+1/2
合肥工业大学许婷婷老师招收2027年入学博士研究生,有机/高分子合成背景
+1/2
天津大学浙江研究院2026年第二批招聘公告:高分子等方向特聘青年研究员/博士后
+1/2
中国科学院兰州化学物理研究所青岛基地王楠楠课题组诚招联合培养硕士一名
+1/1
哈工大马樱招收2027级计算机类博士生
+1/1
|
我写一下,帮我找找错误吧! 基于Dialog建立工程: 包括三个对话框:IDD_DIALOG_MAIN,IDD_DIALOG_PRODUCT,IDD_DIALOG_METHOD 它们分别对应三个对话框类:CMainDlg,CProductDlg和CMethodDlg 在IDD_DIALOG_MAIN中添加两个按钮,分别调用另外两个对话框; 在IDD_DIALOG_PRODUCT中添加5个CEdit Box,用于输入数据,添加Add按钮,CListCtrl列表框用于显示,再添加一个Save按钮。 在IDD_DIALOG_METHOD中添加Combo Box,用于获得列表中的某一列。 CEdit Box向CListCtrl列表框中添加数据已经实现,这里忽略。主要研究怎么保存CListCtrl列表框中的数据,在其他对话框能继续使用。 首先,在mainDlg.h中定义一个结构体如下: public: typedef struct PartDefinition { CString PartID; CString PartName; CString GivenName; CString AF; CString Type; }ProductInfo; ProductInfo *productinfo; 在ProductDlg.cpp中包含头文件mainDlg.h,并双击Save按钮,添加如下代码: void CProductDlg::OnButtonSave() { // TODO: Add your control notification handler code here int nItemCount=m_listDisp.GetItemCount();//表项总数 for(int i=0;i //按行读取数据 CMainDlg *pMDlg=(CMainDlg *)AfxGetMainWnd(); pMDlg->productinfo->PartID = m_listDisp.GetItemText(i,0); pMDlg->productinfo->PartName = m_listDisp.GetItemText(i,1); pMDlg->productinfo->GivenName = m_listDisp.GetItemText(i,2); pMDlg->productinfo->AF = m_listDisp.GetItemText(i,3); pMDlg->productinfo->Type = m_listDisp.GetItemText(i,4); } 这样,关闭IDD_DIALOG_PRODUCT对话框后,数据保存到结构体中了吗?编译没有问题,运行有问题!!! 再到IDD_DIALOG_METHOD中,在MethodDlg.cpp中包含头文件mainDlg.h,双击Combo Box控件,添加如下代码: void CMethodDlg::OnEditchangeComboPartselection1() { // TODO: Add your control notification handler code here CMainDlg *pMDlg=(CMainDlg *)AfxGetMainWnd(); ((CComboBox *)GetDlgItem(IDC_COMBO_PARTSELECTION1))->InsertString = pMDlg->productinfo->GivenName; } 这样能使下拉列表中添加GivenName,也就是CListCtrl列表框中第三列的值吗??? |
2楼2011-03-09 14:49:05
3楼2011-03-11 11:59:32
4楼2011-03-16 21:13:19
5楼2011-03-18 14:40:13
6楼2011-03-25 14:03:06









回复此楼