VC++ MFC对话框怎么在退出程序时提示是否保存数据和删除程序运行产生文档?

VC++ MFC对话框怎么在退出程序时提示是否保存数据和删除程序运行产生文档?,第1张

对话框程序没有文档类管理,“是否需要”这个程序逻辑需要历虚纯你自己管理,比如加一个对话框成员变量IsChanged,有了修改就标记为真。

产生提示,应该在classwizard里面重载对话框WM_CLOSE消息,

void CDialog1::OnClose() 

{

    // TODO: Add your message handler code here and/or call default

    int ret = AfxMessageBox("誉芦退出保存?",MB_YESNOCANCEL)//应该三态按钮,允许取消

    if(ret==IDCANCEL)

        return

    else if(ret==IDOK)

    {

        //保存和处理数据

 肢咐   }

    

    CDialog::OnClose()

}

那个东西触发OnClose消息,OnClose内部又会触发OnCancel消息,按纳滚键盘esc键或者按下界洞纯余面上默认的那个取消按钮触发OnCancel消息,如果这三种关闭的途径都想修改的话那就重写OnCancel,如果只想修改右上角按钮就重写OnClose

if(MessageBox(_T("真的想裤洞退出?"),_T("确认退出"),_MB_OKCANCEL)==IDOK)

{

CDialog::OnClose()

}

else

{

//不点确定就不会退出

}

liuhu314回答的显然不正确。改腔。。 break是用来跳出循环的,狂汗。。设置断点程序就直接退出了,还怎么核孝衫能做到暂停。。。

如果是想程序刮起慎没,可以采用下列语句:

SuspendThread(GetCurrentThread())

注意,一定要包含windows.h这个头文件。

解释:

SuspendThread(HANDLE)是暂停/挂起线程。参数是将要被挂起的进程句柄,而GetCurrentThread()函数正是获得当前线程的句柄,即获得当前的程序所在线程的句柄,所以可以实现程序暂停的功能。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12304146.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-24
下一篇 2023-05-24

发表评论

登录后才能评论

评论列表(0条)

保存