void CAdditionDlg::OnBnClickedAddButton()
{
// TODO: Add your control notification handler code here
INT_PTR nRes; // 用于保存DoModal函数的返回值
CTipDlg tipDlg; // 构造对话框类CTipDlg的实例
nRes = tipDlg.DoModal(); // 弹出对话框
if (IDCANCEL == nRes) // 判断对话框退出后返回值是否为IDCANCEL,如果是则return,否则继续向下执行
return;
// 将各控件中的数据保存到相应的变量
UpdateData(TRUE);
// 将被加数和加数的加和赋值给m_editSum
m_editSum = m_editSummand + m_editAddend;
// 根据各变量的值更新相应的控件。和的编辑框会显示m_editSum的值
UpdateData(FALSE);
返回的就是返回值nRes,当返回的时候就意味着对话框已经销毁,而且根据返回值知道用户按的是哪个按钮,你就可以根据用户不同的按钮选择后面进行不同的逻辑处理。
返回的是调用DoModal函数的那个调用者。
比如主窗口
CMyDlg dlg();
if (dlg.DoModal() == ID_OK)
{
//...返回这里
}