[MFC]UpdateData()的问题

    技术2025-12-22  7

    昨天写代码,在UpdateData()之后调用CDialog::OnOk()程序立刻崩了.

     

    我的本意是点击确定按钮之后把数据保存起来,然后关闭对话框,奈何,行不通.

     

    当时不知道,尝试了各种办法:CDialog:OnCancel()/CDialog:Close()/CDialog:DestoryWindow()/SendMessage()......

     

    气得我当时就想来一个ExitProcess(),调试的时候中断,跳到了SDK的代码里,异常在一处ASSERT,可笑的是居然有这样一个注释:

     

    //Call UpdateData() ?

     

    居然能有人未卜先知,知道我要断在这个地方,难道又是什么MFC的潜规则???

     

    K,我不关了,我点另一个按钮关行吧.

     

    今天心血来潮,把所有EDIT的OnChange事件全写了一句话UpdateData();按钮的单击事件不用UpdateData();

     

    这下没问题了.

     

    看来这个UpdateData();还真不好用,或者说是MFC的一个缺陷???

    最新回复(0)