| 查看: 915 | 回复: 5 | |||
| 当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖 | |||
[交流]
【求助】CListCtrl列表框中数据保存,读取问题?(楼主取消)
|
|||
|
基于对话框建立的工程,里面包含多个对话框。 在其中一个对话框上添加CListCtrl列表框,列表框有5列,内容通过CEdit框输入获得; 添加多行数据后,要保存添加的这些数据(不是保存到硬盘上);以便后面使用这些数据。 在另一个对话框中添加下拉控件,里面的内容是上面列表框中的第2列,相当于动态添加的。 问:如何保存和读取这样的数据? 有一个想法:定义一个结构体,把数据都存放在结构体里面,下拉控件到这个结构体里面找所需要的列数据。 不知道是否可以,主要是不会编程,希望给出具体代码。 [ Last edited by ben_ladeng on 2011-3-25 at 14:14 ] |
» 猜你喜欢
投稿Elsevier的杂志(返修),总是在选择OA和subscription界面被踢皮球
已经有8人回复
自荐读博
已经有7人回复
自然科学基金委宣布启动申请书“瘦身提质”行动
已经有4人回复
求个博导看看
已经有18人回复
» 本主题相关价值贴推荐,对您同样有帮助:
【求助】DSC软件安装和读取数据问题
已经有4人回复
【求助】matlab中保存计算数据的问题
已经有8人回复
» 抢金币啦!回帖就可以得到:
武汉纺织大学电子与电气工程学院------院长团队招聘光电、材料类博士,博士后
+1/501
澳门大学智慧城市物联网国重“结构智能感知、健康监测与无损检测”研究方向博士后招聘
+1/88
山东征女友,坐标济南
+1/84
美国密歇根州立大学林学系杜海顺课题组招收全奖博士生及联合培养博士生
+1/81
中科院长春光机所 招收计算材料学博士/硕士研究生(含机器学习辅助材料设计方向)
+1/80
昆明理工大学冶能院离子液体冶金课题组招收博士
+1/65
福建师范大学柔性电子学院招收2026年博士(储能材料与柔性电子器件)
+2/64
香港理工大学-应用生物与化学科技学系 招收2025年博士研究生
+2/58
急招碳材料相关特任研究人员/博士后/科研助理/26级博士和硕士
+1/49
华中科技大学龚江研究员课题组诚招博士研究生、科研助理和博士后
+3/45
2026年黄河科技学院纳米功能材料研究所招聘
+2/34
征女友 @长安
+1/30
西南交通大学前沿院碳中和与物质循环利用课题组招收博士生
+1/29
暨南大学理工学院 光子技术研究院段宣明团队申请制读博招生
+1/28
Journal of Agricultural and Food Chemistry登不上
+1/27
中科院深圳理工大学网络课题组招聘博后/RA/实习生
+1/14
2026年中科院化学所优青 程靓团队招收有机化学、生物化学背景的博士研究生
+1/8
中国矿业大学黄赳课题组联合中国科学院南京土壤研究所朱晓芳研究员诚聘博士后
+1/4
湖南大学机械与运载工程学院赵岩副教授课题组招生2026级普通博士生1名
+1/2
Discussion最难写?因为没有用对工具吧。
+1/2
3楼2011-03-11 11:59:32
|
我写一下,帮我找找错误吧! 基于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
4楼2011-03-16 21:13:19
5楼2011-03-18 14:40:13







回复此楼