| 查看: 1154 | 回复: 5 | |||
[交流]
【求助】CListCtrl列表框中数据保存,读取问题?(楼主取消)
|
|
基于对话框建立的工程,里面包含多个对话框。 在其中一个对话框上添加CListCtrl列表框,列表框有5列,内容通过CEdit框输入获得; 添加多行数据后,要保存添加的这些数据(不是保存到硬盘上);以便后面使用这些数据。 在另一个对话框中添加下拉控件,里面的内容是上面列表框中的第2列,相当于动态添加的。 问:如何保存和读取这样的数据? 有一个想法:定义一个结构体,把数据都存放在结构体里面,下拉控件到这个结构体里面找所需要的列数据。 不知道是否可以,主要是不会编程,希望给出具体代码。 [ Last edited by ben_ladeng on 2011-3-25 at 14:14 ] |
» 猜你喜欢
只有每年这种时候来逛逛小木虫
已经有24人回复
估计是周四
已经有3人回复
基金啊基金
已经有3人回复
科研孤儿太难了
已经有15人回复
让我中一个面上吧!
已经有10人回复
言之凿凿,明天官网会通知放榜?
已经有17人回复
时间戳又变了
已经有17人回复
今天系统多次维护,明天很可能放榜!
已经有11人回复
时间戳变了,能看出什么问题?
已经有23人回复
放榜前的不淡定
已经有12人回复
» 本主题相关价值贴推荐,对您同样有帮助:
【求助】DSC软件安装和读取数据问题
已经有4人回复
【求助】matlab中保存计算数据的问题
已经有8人回复
» 抢金币啦!回帖就可以得到:
散金祈福
+5/4290
告别流水线爽文!108万字完结仙侠《女娲石之灵石奇缘(仙界篇)》值得细品
+1/4048
每年这时候我都再仔细读一遍《范进中举》
+1/483
华西生物制药研究院招聘科研助理
+2/416
五大联赛看好哪支球队
+5/250
散金求好运
+1/200
坐标北京诚征男友
+1/116
山东征女友,坐标济南
+1/91
面上基金祈福
+1/49
南京理工大学优青团队催化化学方向招收推免研究生
+1/33
上海交通大学化学化工学院倪伟焱课题组招收2027年申请考核制博士生(电催化+高分子)
+1/22
祈祷老公中国基
+1/11
2027环境工程博士申请
+1/9
中国科学院生态环境研究中心环境工程相关方向招收保送硕士和联合培养博士和硕士研究生
+1/4
找女友
+1/3
清华大学环境课题组招聘环境工作专业客座生研究生2-3名(应用导向)
+1/2
新审查指南施行半年,AI方向的专利申请是不是更看"技术味"了?
+1/2
北理工集成电路杰青团队 | 诚招科助理
+1/2
北理工集成电路杰青团队 | 诚招科助理
+1/2
清华大学环境课题组招聘环境工作专业客座生研究生2-3名(应用导向)
+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









回复此楼