看流星社区

 找回密码
 注册账号
查看: 1893|回复: 1

VC++中想要在关闭时弹出确认对话框应该怎么做

[复制链接]

该用户从未签到

发表于 2014-7-19 08:49:23 | 显示全部楼层 |阅读模式
如果响应WM_CLOSE消息
void CtextDlg::OnClose()
{
if(IDOK == MessageBox(_T("您确定要退出吗"),NULL, MB_OKCANCEL))
{
CDialogEx::OnDestroy();
}
}
那么在点击确定和取消按钮退出程序时不会确认
如果相应WM_DESTROY消息
void CtextDlg::OnDestroy()
{
if(IDOK == MessageBox(_T("您确定要退出吗"),NULL, MB_OKCANCEL))
{
CDialogEx::OnDestroy();
}
}
则会在对话框销毁之后才弹出确认对话框
到底应该怎么办?

该用户从未签到

发表于 2014-7-19 08:49:40 | 显示全部楼层
对于对话框项目,这种退出确认需要在CDialog的OnOK和OnCancel这两个虚函数中执行
例如:
void CtextDlg::OnOK()
{
if (IDYES == MessageBox(_T("您确定要退出吗 ?"), NULL, MB_YESNO))
{
  CDialog::OnOK();
}
}

void CtextDlg::OnCancel()
{
if (IDYES == MessageBox(_T("您确定要退出吗 ?"), NULL, MB_YESNO))
{
  CDialog::OnCancel();
}
}
点击按钮快速添加回复内容: 支持 高兴 激动 给力 加油 苦寻 生气 回帖 路过 感恩
您需要登录后才可以回帖 登录 | 注册账号

本版积分规则

小黑屋|手机版|Archiver|看流星社区 |网站地图

GMT+8, 2024-5-17 16:05

Powered by Kanliuxing X3.4

© 2010-2019 kanliuxing.com

快速回复 返回顶部 返回列表