MFC——弹出对话框编程问题
来源:互联网 发布:安卓编程权威指南 pdf 编辑:程序博客网 时间:2024/05/18 00:16
按 http://www.jizhuomi.com/software/160.html 编程实例进行编程,遇到如下问题:
1、对弹出对话框其中的确定和取消未实现按键处理函数时,点击确定或取消按键对话框不退出。
2、添加了弹出对话框确定和取消处理函数如下,点击确定或取消按钮后弹出对话框也不能退出。
void CTiptDlg::OnClickedToastCancel()
{
// TODO: 在此添加控件通知处理程序代码
}
void CTipDlg::OnClickedToastOk()
{
// TODO: 在此添加控件通知处理程序代码
}
3、参照如下代码在AdditionDlg.cpp编写点击计算按钮的处理函数
C++代码
- CAdditionDlg dlg; // 定义对话框类CAdditionDlg的对象dlg
- m_pMainWnd = &dlg; // 将dlg设为主窗口
- INT_PTR nResponse = dlg.DoModal(); // 弹出对话框dlg,并将DoModal函数的返回值(退出时点击按钮的ID)赋值给nResponse
- if (nResponse == IDOK) // 判断返回值是否为OK按钮(其ID为IDOK,鸡啄米已经将它删除)
- {
- // TODO: Place code here to handle when the dialog is
- // dismissed with OK
- }
- else if (nResponse == IDCANCEL) // 判断返回值是否为Cancel按钮(其ID为IDCANCEL,鸡啄米将它的Caption改为了“退出”)
- {
- // TODO: Place code here to handle when the dialog is
- // dismissed with Cancel
- }
AdditionDlg.cpp代码如下:INT_PTR ret;CTipDlg tip = new CTipDlg();if(I0_TIP_OK == ret){ //弹出对话框确定键ID
UpdateData(TRUE);
m_editSum = m_editSummand + m_editAadend;
UpdateData(FALSE);
}elseif{IO_TIP_CNCEL}{ //弹出对话框取消键ID}点击确定后对话框不退出,同时if中的语句未执行。
4、在AdditionDlg.cpp代码中的UpdateData(TRUE);前加入tip.~CTipDlg();任不能解决关闭对话框的问题。
5、解决办法:
在TipDlg.cpp中添加处理函数如下:
void CTipDlg::OnClickedToastCancel()
{
// TODO: 在此添加控件通知处理程序代码
CToastDlg::OnCancel();
}
void CTipDlg::OnClickedToastOk()
{
// TODO: 在此添加控件通知处理程序代码
CToastDlg::OnOK();
}
在AdditionDlg.cpp的计算按钮处理函数中加入代码如下:
- void CAdditionDlg::OnBnClickedAddButton()
- {
- // TODO: Add your control notification handler code here
- INT_PTR nRes; // 用于保存DoModal函数的返回值
- CTipDlg tipDlg; // 构造对话框类CTipDlg的实例
- nRes = tipDlg.DoModal(); // 弹出对话框
- if (IDCANCEL == nRes) // 判断对话框退出后返回值是否为IDCANCEL,如果是则return,否则继续向下执行
- return;
- // 将各控件中的数据保存到相应的变量
- UpdateData(TRUE);
- // 将被加数和加数的加和赋值给m_editSum
- m_editSum = m_editSummand + m_editAddend;
- // 根据各变量的值更新相应的控件。和的编辑框会显示m_editSum的值
- UpdateData(FALSE);
- }
- MFC——弹出对话框编程问题
- MFC编程:弹出服务器消息推送对话框
- MFC点击菜单,弹出对话框问题
- MFC基于对话框——右键弹出菜单,并响应函数
- MFC基于对话框——右键弹出菜单,并响应函数
- 初学MFC——如何弹出你做的对话框
- MFC基于对话框——右键弹出菜单,并响应函数
- MFC第七课——对话框编程
- MFC(五)——对话框编程
- MFC 弹出一新对话框
- MFC 按钮弹出对话框
- MFC弹出任务对话框
- MFC 弹出对话框
- MFC 打开弹出对话框
- MFC不弹出对话框
- MFC编程:Win7下支持弹出UAC对话框获取管理员权限
- MFC DoModal弹出对话框很慢的问题
- VS2013/MFC编程基础——对话框的编程
- activity的生命周期
- USB无线网卡驱动移植(2)
- JSTL详解(一)
- 如何在360短信拦截之前拦截短信
- 电话号码、手机号码正则表达式及在JS中的运用
- MFC——弹出对话框编程问题
- eclipse 报错 Cannot find dispatch method for
- Android图像处理之Bitmap类
- hdu-2013-蟠桃记
- ASA 5500 series ASDM
- 队列练习 1
- 正则表示式30分钟入门
- ubuntu启动流程及定制
- 随时笔记之VC++ (一)