我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 1260|回复: 0

如何将父对话框中的编辑框变量传递给子对话框的编辑框变

[复制链接]

该用户从未签到

1万

主题

1292

回帖

936

积分

管理员

积分
936

社区居民最爱沙发原创达人社区明星终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

QQ
发表于 2013-7-30 19:13:36 | 显示全部楼层 |阅读模式
第一步:在父对话框中的头文件中声明一个公开的变量(如我的父编辑框的变量显示是数字的,就定义一个int变量类型)。 我在我的程序中的相应头文件中定义一个公开的int变量m;第二步:在子对话框的头文件声明一个int型变量(因为我的程序是显示数字的),我的定义为times,用来获取父对话框的(你想得到的编辑框信息)值,怎么获取在下面说。第二步:在父对话框你点击按钮进入子对话框的那个按钮函数那里进行对子对话框刚才定义的times变量进行赋值,则把父对话 你想要得到的值赋给times,必须把父对话框的编辑框的值转化为int型。我的程序如下:CSetinfoDlg dlg; //CSetinfoDlg为我的子对话框的类,定义子对话框的一个变量CString cstest; //cstest是给编辑框赋值m_num.GetWindowText(cstest); //编辑框赋值函数 m = atoi(cstest); //将编辑框显示的数转化为int型if( m <=0 ) //这个不用理解,也不难理解,和本话题不相干{ MessageBox("The num must be greater than 0 !!!");} else { dlg.times=m; //将m的值赋值给子对话框的times变量,记得一定要在下面DoModal前赋值, //不然将会不成功 dlg.DoModal();//打开子对话框 CSetnumDlg::OnCancel();//关闭父对话框 }第三步:在子对话框的初始化函数中将times值赋给子对话框编辑框变量,如下: CString str; //定义一个字符串变量,用来给子对话框的编辑框赋值 str.Format("%d",times); //将times的值转换为字符串类型,然后赋值给str变量m_times.SetWindowText(str);//将变量str赋值给m_times(我的程序的子对话框的编辑框变量),并显示。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

论坛开启做任务可以
额外奖励金币快速赚
积分升级了


Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

平平安安
TOP
快速回复 返回顶部 返回列表