新手求教,关于模态对话框的返回
新建了一个基于FormView的单文档视图,在界面中有一Button,
CFormView::OnButton()
{
CTestDlg dlg
if(IDOK==dlg.DoModal())
{
m_a1=dlg.a1
}
}
点击调用一模态对话框TestDlg,在Dlg中有一个Combo1用于
输入数据,有一按钮Save
void CTestDlg::OnSave()
{
GetDlgItemText(IDC_COMBO1,A1);
a1=atoi(A1)
}
现在情况是这样的,我在COMBO中输入数据后,按下SAVE,然后按下IDOK,退出对话框后,视图类能得到最后的数据m_a1=a1
但是,当我在已经将控件值传给视图类的情况下,我想进对话框查看,不按下SAVE(太麻烦了,难道不改变数据,每次都要按下SAVE?),而是直接按IDOK退出,a1的值却改变了,
调式了下变成-858993460。请问这是什么原因,各位大大帮忙看下,如果我描述的不清楚的话,说下,我在解释
CFormView::OnButton()
{
CTestDlg dlg
if(IDOK==dlg.DoModal())
{
m_a1=dlg.a1
}
}
点击调用一模态对话框TestDlg,在Dlg中有一个Combo1用于
输入数据,有一按钮Save
void CTestDlg::OnSave()
{
GetDlgItemText(IDC_COMBO1,A1);
a1=atoi(A1)
}
现在情况是这样的,我在COMBO中输入数据后,按下SAVE,然后按下IDOK,退出对话框后,视图类能得到最后的数据m_a1=a1
但是,当我在已经将控件值传给视图类的情况下,我想进对话框查看,不按下SAVE(太麻烦了,难道不改变数据,每次都要按下SAVE?),而是直接按IDOK退出,a1的值却改变了,
调式了下变成-858993460。请问这是什么原因,各位大大帮忙看下,如果我描述的不清楚的话,说下,我在解释
...全文
相关推荐
Qt主界面获取模态对话框数据的方法
Qt主界面获取非模态对话框数据的方法
MFC模态与非模态对话框:从消息循环到实战避坑指南
对话框是Windows桌面应用开发中的基础UI组件,其核心在于消息处理机制。模态对话框通过启动独立的消息循环,阻塞父窗口交互,确保任务流的连续性;非模态对话框则共享主消息循环,支持并行操作。理解这两种模式的底层原理,对于构建健壮、符合用户预期的界面至关重要。在MFC框架中,这直接关系到资源管理、数据同步和线程安全。实际开发中,错误使用非模态对话框可能导致界面卡死、数据不同步等隐蔽问题。本文基于MFC开发实践,深入剖析模态与非模态对话框从创建、消息处理到销毁的全流程,并提供内存泄漏、数据交换等常见陷阱的解决方
MFC学习之模态对话框和非模态对话框
基于MFC向导实现的模态对话框和非模态对话框的代码,程序是基于vs2013写的,可以完美运行,适合新手学习,大佬请忽略!
VS2010+MFC 模态对话框、非模态对话框的显示与打开以及对话框的之间的数据传递
弹出子对话框,在子对话框特定位置,显示非模态对话框,对话框之间的数据传递
Chrome中模态对话框showModalDialog返回值问题的解决方法
chrome中弹出模态对话框,通过window.returnValue赋返回值关闭后,有的情况下无法取得返回值。


