社区
界面
帖子详情
如何变量从一个传递到另一个对话框?
ayin668
2010-11-03 09:25:19
对话框(Dialog1)中有一编辑框(Edit1),点击编辑框(Edit1)弹出一数字输入对话框(Dialog2),两个对话框分别为两个类,现在的问题是怎样才能把输入对话框(Dialog2)的数字传递到(Dialog1)中的编辑框(Edit1)中的变量?说白了就是不同类之间的变量怎么传递?我用的环境是VS2005。
...全文
277
20
打赏
收藏
如何变量从一个传递到另一个对话框?
对话框(Dialog1)中有一编辑框(Edit1),点击编辑框(Edit1)弹出一数字输入对话框(Dialog2),两个对话框分别为两个类,现在的问题是怎样才能把输入对话框(Dialog2)的数字传递到(Dialog1)中的编辑框(Edit1)中的变量?说白了就是不同类之间的变量怎么传递?我用的环境是VS2005。
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
morebread
2010-11-04
打赏
举报
回复
Cdialog1 中包含CDialog2的头文件。
CDialog1和CDialog2的编辑框都绑定一个变量edit1和edit2
在点击CDialog1的edit后
CDialog2 dlg;
dlg.edit2 = edit1;
if (IDOK == dlg.domodal())
{
edit1 = dlg.edit2;
}
就这样
xiaoyilong19
2010-11-04
打赏
举报
回复
CDialog2
{
private :
int num;
public:
int GetNum(){return num;}
};
CDialog1
{
public:
CDialog1(CDialog2*pDlalog2);//赋值
int GetNum(){}{m_pdlg2->GetNum(); }
private:
CDialog2*m_pdlg2;
};
//构造
CDialog2 dlg2;
CDialog1 dlg1(&dlg2);
dlg1.GetNum();
ayin668
2010-11-04
打赏
举报
回复
我是这样用的,因为变量是从Dialog2传到Dialog1中,
我在Dialog2定义为static int num;
然后再到Dialog1调用它,发现不行啊。应该怎样做呢?
ayin668
2010-11-04
打赏
举报
回复
[Quote=引用 11 楼 djj315 的回复:]
这个貌似方法有好多种哦,看你的用途了。
[/Quote]
方法是很多,可都不清楚啊,还请老兄讲具体点啊、。
Simao
2010-11-04
打赏
举报
回复
这个貌似方法有好多种哦,看你的用途了。
tigerMayDo
2010-11-04
打赏
举报
回复
将dlg2的头文件包含在dlg1.cpp中 然后在dlg1.cpp中 m_edit1 = dlg2.m_edit2
浩南_哥
2010-11-04
打赏
举报
回复
PostMessage,共享变量。。。。。
lyingbo
2010-11-04
打赏
举报
回复
[Quote=引用 15 楼 morebread 的回复:]
Cdialog1 中包含CDialog2的头文件。
CDialog1和CDialog2的编辑框都绑定一个变量edit1和edit2
在点击CDialog1的edit后
CDialog2 dlg;
dlg.edit2 = edit1;
if (IDOK == dlg.domodal())
{
edit1 = dlg.edit2;
}
就这样
[/Quote]
这个应该是比较简单的方法了
sichuanwww
2010-11-04
打赏
举报
回复
消息或者全局变量
Eleven
2010-11-04
打赏
举报
回复
[Quote=引用楼主 ayin668 的回复:]
对话框(Dialog1)中有一编辑框(Edit1),点击编辑框(Edit1)弹出一数字输入对话框(Dialog2),两个对话框分别为两个类,现在的问题是怎样才能把输入对话框(Dialog2)的数字传递到(Dialog1)中的编辑框(Edit1)中的变量?说白了就是不同类之间的变量怎么传递?我用的环境是VS2005。
[/Quote]
Dilaog1相当于是Dialog2的父窗口了,修改Dialog2的类,加个父窗口Dialog1类的指针,构造的时候传递进入,或者在Dialog2中直接使用GetParent()得到Dialog1的指针
haogeai123
2010-11-04
打赏
举报
回复
可以使用消息,自定义消息或者使用系统预设的消息都可以。
还有就是使用全局变量
向立天
2010-11-04
打赏
举报
回复
[Quote=引用 15 楼 morebread 的回复:]
Cdialog1 中包含CDialog2的头文件。
CDialog1和CDialog2的编辑框都绑定一个变量edit1和edit2
在点击CDialog1的edit后
CDialog2 dlg;
dlg.edit2 = edit1;
if (IDOK == dlg.domodal())
{
edit1 = dlg.edit2;
}
就这样
[/Quote]
就这样
昨夜无风
2010-11-03
打赏
举报
回复
最基本的模态对话框赋值啊!
liuweiele
2010-11-03
打赏
举报
回复
senddlgitemmessage
向立天
2010-11-03
打赏
举报
回复
如果弹出的数字输入对话框是模态调用
那么可以在DoModal之后只接赋值
wltg2001
2010-11-03
打赏
举报
回复
最方便的方法是用一个全局变量不就行了,不过这种方法破坏了封装性。
pengpeng321456
2010-11-03
打赏
举报
回复
何必这么麻烦呢 为什么不设一个全局变量在APP文件里呢
ayin668
2010-11-03
打赏
举报
回复
[Quote=引用 2 楼 wkq87 的回复:]
获得另外一个类的指针,再调用
[/Quote]
?如何做呢?不甚清楚啊,望大哥指点。
wkq87
2010-11-03
打赏
举报
回复
获得另外一个类的指针,再调用
野男孩
2010-11-03
打赏
举报
回复
你的对话框Dialog1弹出一个对话框Dialog2,这说明Dialog1的类能操作Dialog2的类吧。
Dialog2关闭的时候,输入的数字可以记录到Dialog2的成员变量吧。
Dialog1既然能操作Dialog2,那么就可以获得Dialog2的那个记录了数字的成员变量的值吧。
Done!
全局
变量
在
对话框
中的使用
提供两个全局
变量
在
对话框
中使用的实例,
一个
实例中定义了全局指针,可通过指针获取
对话框
编辑框控件的值;另
一个
实例中定义了
一个
全局
变量
,用于
传递
对话框
控件的值,在VC++6.0中运行通过。
MFC
对话框
全局
变量
.txt
我建了
一个
View,然后View中又调用了
一个
对话框
,有些
变量
是需要在View中和
对话框
中同时使用的,当调用
对话框
的时候,
变量
的操作返回给
对话框
,而不是返回给View,因此想要定义的
变量
在View和
对话框
的类中都可以使用...
如何在VC++中两个
对话框
相互
传递
信息
如何在VC++中两个
对话框
相互
传递
信息。采取避免在头文件中定义具体类型的指针
变量
,用定义空指针的方法绕过头文件重复包含的问题。
对话框
数据
传递
,在
对话框
1点击ok按钮的时候弹出
对话框
2,并且把
对话框
1中的数据显示在
对话框
2中
由于本人不才,对
一个
对话框
数据的
传递
搞了半天,最后迫不得已就用了全局
变量
这种方式,在此小妹将这个代码上传上来,供后来的人学习一下
如何在
一个
对话框
中调用另
一个
对话框
里的
变量
若有两个
对话框
,在
一个
对话框
中定义了
一个
串口类的
变量
,在切换到另
一个
对话框
时我还想使用这个
变量
对串口进行操作,该如何使用呢? ------解决方案1-------------------- 在Dialog2中定义
一个
Set方法,比如...
界面
15,979
社区成员
115,896
社区内容
发帖
与我相关
我的任务
界面
VC/MFC 界面
复制链接
扫一扫
分享
社区描述
VC/MFC 界面
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章