BOOL bOK = FALSE; // assume failure
TRY
{
DoDataExchange(&dx);
bOK = TRUE; // it worked
}
CATCH(CUserException, e)
{
// validation failed - user already alerted, fall through
ASSERT(!bOK);
// Note: DELETE_EXCEPTION_(e) not required
}
AND_CATCH_ALL(e)
{
// validation failed due to OOM or other resource failure
e->ReportError(MB_ICONEXCLAMATION,
AFX_IDP_INTERNAL_FAILURE);
ASSERT(!bOK);
DELETE_EXCEPTION(e);
}
END_CATCH_ALL
pThreadState->m_hLockoutNotifyWindow = hWndOldLockout;
return bOK;
}
在对话框的重载函数DoDataExchange中,又调用CDialog::DoDataExchange(pDX)
void CSquare::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSquare)
DDX_Text(pDX, IDC_LENGTH, m_length);
DDV_MinMaxInt(pDX, m_length, 10, 200);
//}}AFX_DATA_MAP
}
UpdateData(TRUE); // 更新数据为真,则表示控件->成员变量
UpdateData(FALSE);// 更新数据为假,则表示成员变量->控件
所以,在更新数据时我们只调用UpdateData函数就行了!
本文来自电脑杂谈,转载请注明本文网址:
http://www.pc-fly.com/a/ruanjian/article-31236-3.html
天下有那么多便宜又正品的东西没有
真正重要的东西用眼睛是看不见的
喜欢熊黛林