我使用CTabView来容纳不同的FormView。 我可以毫无问题地切换到另一个视图。 从ParamView我不想允许切换到另一个视图,直到确认更改的值。 我用OnActivateView(..),OnShowWindow(..)试过了。但是为时已晚,视图已经转移到另一个视图,然后这些处理程序被解雇了。 :(
void CParamView::OnActivateView(BOOL bActivate, CView* pActivateView, CView* pDeactiveView)
{
/* // did not work, next View already shown before
if (!bActivate && pActivateView != pDeactiveView)
{
if (ParamValueChanged())
{
if (!ConfirmChangedValues())
return;
}
}
*/
CFormView::OnActivateView(bActivate, pActivateView, pDeactiveView);
}