cwnd派生类的cpp文件中如何读入对话框中的变量?

caplisimi 2007-10-10 06:36:02
我的程序中的一个cpp文件--b.cpp对应的类Cb是cwnd类派生出来的,现在我想在b.cpp中读入另一个对话框中的一个数据(a.cpp)。
我在a.cpp中用
Cb dlgb;
dlgb.m_b=m_a;
dlgb.domal();
这样传递变量值,可是不成功,提示domal不是Cb的成员函数。。。
我就会用这么一种方法。

所有谁教我个别的方法实现这个功能啊?谢谢了!!!!!
...全文
128 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
shinefen 2007-10-12
  • 打赏
  • 举报
回复
引用的话~ 只要声明CWND派生的对象, 而且像theApp对象一样声明为全局,这就是唯一个可用对象拉,
caplisimi 2007-10-12
  • 打赏
  • 举报
回复
你理解错了
我是想在b.cpp中引用a.cpp中的一个变量。
b.cpp是从public cwnd继承来的。而a.cpp是public dialog继承来的。我用dlgb.DoModal的办法就是告诉我不是成员函数,我不是想弹出那个对话框。。
是要引用。
谢谢
wltg2001 2007-10-12
  • 打赏
  • 举报
回复
我的程序中的一个cpp文件--b.cpp对应的类Cb是cwnd类派生出来的,现在我想在b.cpp中读入另一个对话框中的一个数据(a.cpp)。
我在a.cpp中用
Cb dlgb;
dlgb.m_b=m_a;
dlgb.domal();
这样传递变量值,可是不成功,提示domal不是Cb的成员函数。。。
===================
认真看了一下,不明白你的想法是什么,Cb不是对话框类,a.cpp才是对话框类的源文件吧,你为什么用dlgb.DoModal,它确实不是CWnd的成员函数啊。
如果你想在CWnd派生类中引用一个对话框的数据可以这样做:
设对话框类为CDlg;则在CWnd类的处理函数中写:
CDlg dlg;
dlg.DoModal();//能弹出一个对话框
caplisimi 2007-10-12
  • 打赏
  • 举报
回复
我在a.cpp中定义了全局变量double temp;
现在我在b.cpp中函数funcb()准备使用它,我在func()中声明extern double temp;
一编译的话就报错:
unresolved external symbol "double temp" (?temp@@3NA)。。。

怎么办啊?
wltg2001 2007-10-11
  • 打赏
  • 举报
回复
我的程序中的一个cpp文件--b.cpp对应的类Cb是cwnd类派生出来的,现在我想在b.cpp中读入另一个对话框中的一个数据(a.cpp)。
==========================
CWnd与对话框是什么关系呢?对话框是在CWnd的处理函数中生成的还是和CWnd没有直接关联的呢?如果对话框是在CWnd的处理函数中生成的,你的方法没有问题,不过是DoModal()写错了,如果不是就要先获取你想得到的对话框类对象的指针。
shinefen 2007-10-11
  • 打赏
  • 举报
回复
你想在b.cpp中读取a.cpp中的对话框数据??
但你所写的只是在a.cpp中生成CB类的对象将CA类本对象的变量给他.. (而且这个CB类对象是你想要赋值的那个?)

一个笨方法:
可以用的方法有在a.cpp中 声明一个 double tempab;
在初试化涵数或者其他方法中tempab=m_a;

在b.cpp中扩展声明 extern double tempab;
在初试化涵数或者其他方法中m_b=tempab;
这样一来就能读取在b.cpp中的任何类读取a.cpp中的任何类数据




在这类你的CB类的基类 改为CObject类 是否会好点?

caplisimi 2007-10-11
  • 打赏
  • 举报
回复
到底怎么用啊,m_b和m_a都是double型的。

帮帮忙啊教教我!
caplisimi 2007-10-11
  • 打赏
  • 举报
回复
to wltg2001

我的b.cpp对应的类是public cwnd,而a.cpp对应的类是public dialog。。。。我说的可能不专业。。。

那个DoModal没打错,是我在这提问的时候打错了。。我用这个人家报错说是DoModal不是cwnd的成员函数。
caplisimi 2007-10-11
  • 打赏
  • 举报
回复
没想到这么复杂啊。。
  • 打赏
  • 举报
回复
同意楼上的。.
没注意
凤矶 2007-10-11
  • 打赏
  • 举报
回复
CWnd没有这个方法。
先Create()
再ShowWindow()
  • 打赏
  • 举报
回复
Cb dlgb;
dlgb.PostMessage(WM_YOUMESSAGE,0,0)
在Cb中处理WM_YOUMESSAGE消息就可以了
  • 打赏
  • 举报
回复
Cb dlgb;
dlgb.m_b=m_a;
dlgb.DoModal();
caplisimi 2007-10-11
  • 打赏
  • 举报
回复
具体点行吗~~
shanhqk 2007-10-10
  • 打赏
  • 举报
回复
1)没有domal,应该是DoModal();
2)可以使用消息处理
机器学习是一种人工智能(AI)的子领域,致力于研究如何利用数据和算法让计算机系统具备学习能力,从而能够自动地完成特定任务或者改进自身性能。机器学习的核心思想是让计算机系统通过学习数据的模式和规律来实现目标,而不需要显式地编程。 机器学习应用非常广泛,包括但不限于以下领域: 图像识别和计算机视觉: 机器学习在图像识别、目标检测、人脸识别、图像分割等方面有着广泛的应用。例如,通过深度学习技术,可以训练神经网络来识别图像的对象、人脸或者场景,用于智能监控、自动驾驶、医学影像分析等领域。 自然语言处理: 机器学习在自然语言处理领域有着重要的应用,包括文本分类、情感分析、机器翻译、语音识别等。例如,通过深度学习模型,可以训练神经网络来理解和生成自然语言,用于智能客服、智能助手、机器翻译等场景。 推荐系统: 推荐系统利用机器学习算法分析用户的行为和偏好,为用户推荐个性化的产品或服务。例如,电商网站可以利用机器学习算法分析用户的购买历史和浏览行为,向用户推荐感兴趣的商品。 预测和预测分析: 机器学习可以用于预测未来事件的发生概率或者趋势。例如,金融领域可以利用机器学习算法进行股票价格预测、信用评分、欺诈检测等。 医疗诊断和生物信息学: 机器学习在医疗诊断、药物研发、基因组学等领域有着重要的应用。例如,可以利用机器学习算法分析医学影像数据进行疾病诊断,或者利用机器学习算法分析基因数据进行疾病风险预测。 智能交通和物联网: 机器学习可以应用于智能交通系统、智能城市管理和物联网等领域。例如,可以利用机器学习算法分析交通数据优化交通流量,或者利用机器学习算法分析传感器数据监测设备状态。 以上仅是机器学习应用的一部分,随着机器学习技术的不断发展和应用场景的不断拓展,机器学习在各个领域都有着重要的应用价值,并且正在改变我们的生活和工作方式。

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧