第七节 对话框之间的数据传递
来源:互联网 发布:想开农村淘宝怎么办理 编辑:程序博客网 时间:2024/05/19 15:20
第七节 对话框之间的数据传递
从上一节讲到的模态对话框工程继续,在主对话框和模态对话框都画一个Edit Control ,要实现的目标是,在主对话框输入的信息会显示到模态对话框上,在模态对话框输入的信息,关闭后又显示在主对话框上.
用4种方法来实现,分别是
①、全局变量法:
②、主对话框法:AfxGetMainWnd();
③、父窗口法:GetParent();
④、成员变量、成员函数法;
---------------------------------------------------------------------
①、全局变量法:
1->在主对话框类 CMFCDlg 声明一个全局变量 CString strText;来起到桥梁的作用
2->在模态对话框还没弹出来之前 取出主对话框的Edit Control信息 具体操作
GetDlgItemText(IDC_MAIN_EDIT,strText);
3->点击建立模态对话框 进入CMydialog设置,在这之前先进入Mydialog.h 声明下extren CString strText来标明这是一个全局变量
4->在模态对话框创立时进入的 BOOL CMydialog::OnInitDialog() 中 设置Edit Control 具体操作
SetDlgItemText(IDC_SET_EDIT,strText);
5->在模态对话框点击OK的响应函数获取 模态对话框Edit Control信息
GetDlgItemText(IDC_SET_EDIT,strText);
6->在主对话框重新显示之前 在 BOOL C主对话框Dlg::OnInitDialog() 中 设置Edit Control 具体操作
SetDlgItemText(IDC_MAIN_EDIT,strText);
------------------------------------------------------------------------------------------
②、主对话框法:AfxGetMainWnd();
1->在模态对话框创立时进入的 BOOL CMydialog::OnInitDialog() 中 获取主对话框指针
CString strText;
CMFCTestDlg *pMainWnd = (CMFCTestDlg *)AfxGetMainWnd();
2->取得主对话框Edit Control信息
pMainWnd->GetDlgItemText(IDC_MAIN_EDIT, strText);
3->设置当前模态对话框Edit Control信息
SetDlgItemText(IDC_SET_EDIT, strText);
4->对模态对话框的OK消息响应void CMyDialog::OnBnClickedOk() 加入获取Edit Control信息
CString str;
GetDlgItemText(IDC_SET_EDIT, str);
5->设置主对话框Edit Control
CMFCTestDlg *pWnd = (CMFCTestDlg *)AfxGetMainWnd();
pWnd->SetDlgItemText(IDC_MAIN_EDIT, str);
-----------------------------------------------------------------------------
③、父窗口法:GetParent();
1->在模态对话框创立时进入的 BOOL CMydialog::OnInitDialog() 中 获取主对话框指针
CString strText;
CMFCTestDlg *pParent = (CMFCTestDlg *)GetParent;
2->取得主对话框Edit Control信息
pParent->GetDlgItemText(IDC_MAIN_EDIT, strText);
3->设置当前模态对话框Edit Control信息
SetDlgItemText(IDC_SET_EDIT, strText);
4->对模态对话框的OK消息响应void CMyDialog::OnBnClickedOk() 加入获取Edit Control信息
CString str;
GetDlgItemText(IDC_SET_EDIT, str);
5->设置主对话框Edit Control
CMFCTestDlg *pP = (CMFCTestDlg *)GetParent;
pP->SetDlgItemText(IDC_MAIN_EDIT, str);
④、成员变量、成员函数法;
----------------------------------------------------------------------
1->在模态对话框添加public 成员变量CWND m_hwnd;并赋NULL
2->在主对话框定义CMydialog dlg;后调用dlg.m_hwnd= this;获取主对话框指针
3->在模态对话框创立时进入的 BOOL CMydialog::OnInitDialog() 中获取主对话框Edit 信息并且设置为当前
CString str;
m_pWnd->GetDlgItemText(IDC_MAIN_EDIT, str);
SetDlgItemText(IDC_SET_EDIT, str);
4->对模态对话框的OK消息响应void CMyDialog::OnBnClickedOk() 加入设置主对话框Edit Control信息
CString str;
GetDlgItemText(IDC_SET_EDIT, str);
m_pWnd->SetDlgItemText(IDC_MAIN_EDIT, str);
- 第七节 对话框之间的数据传递
- 对话框之间传递数据
- 6.对话框之间的数据传递
- MFC不同对话框之间的数据传递
- MFC对话框之间传递数据
- WM_COPYDATA两个对话框之间传递数据的乱码问题
- 对话框之间的参数传递
- 对话框之间的参数传递
- 对话框之间的参数传递
- 对话框的数据传递
- 用SetWindowLong在对话框之间传递数据
- MFC中两个对话框之间数据传递
- MFC中两个对话框之间数据传递
- MFC中两个对话框之间数据传递
- 对话框之间变量值的传递
- 对对话框之间的信息传递
- mfc对话框窗口之间变量的传递
- 对对话框之间的信息传递
- Windows XP不能打开chm文件
- 第四节 鼠标与键盘消息
- 第五节 定时器使用
- 第六节 模态与非模态对话框的创建
- vc中的ini操作
- 第七节 对话框之间的数据传递
- 数据库最常用SQL语句
- 第八节 对话框控件的变量绑定和开源控件的使用
- IOS字体大小,字号的问题 UIFont
- 第九节 组合热键与注册全局热键
- 第十节 通用对话框
- 关于C/C++ 语言中的表达式求值顺序
- 数据结构---队列链表c实现
- C/C++ 自己编写内存拷贝函数:memcpy()