
1、打开Microsoft Visual Studio 2010, 新建名字为[提示框]的程序。在新程序界面空白窗口上放置合适的控件:包括,显示 *** 作流程的textbox控件;用于3项不同提示框 *** 作的3个button按钮。
2、添加按钮1代码,d出简单提示框。
3、添加按钮2代码,d出处理反馈 *** 作的提示框,如果用户确认,则执行确认方面的 *** 作;如果用户取消,则执行取消方面的 *** 作。
4、添加按钮3代码。在反馈提示框中加入定制的图标。
5、生成exe文件进行测试,d出简单提示框。并在日志框中出现了用户的 *** 作.
6、测试处理反馈 *** 作的提示框,用户确认后在日志栏中看到执行了确认方面的 *** 作;用户取消后在日志栏中看到执行了取消方面的 *** 作。
7、测试加入图标的反馈提示框。可以看到出现了醒目的黄色报警图标.
这里关键要看,对话框是模态还是非模态。模态对话框的确定和取消按钮,调用的是EndDialog来结束对话框,不会触发WM_CLOSE消息,因此,要在两个按钮响应消息OnOK和OnCancel中进行确认提示,以OnOK为例:
void CDialog1::OnOK()
{
if(IDOK==AfxMessageBox(_T("您确定要退出吗"),MB_OKCANCEL))
CDialogEx::OnOK()
}
需要注意的是,即使是模态对话框,如果在标题栏中增加了系统按钮,那么“红叉”按钮的关闭还是需要响应WM_CLOSE消息,也就是你同样需要在OnClose里面做这个确认提示。
非模态对话框,会屏蔽OnOK和OnCancel中的基类调用,只需要响应WM_CLOSE即可。
在资源编辑器中双击确定按钮,确定随后d出的对话框,自动跳到其对应代码段。删除CDialog::OnOK()这行。添加你要d出的对话框定义,如:C你要d出的对话框Dlgdlg
dlg.DoModal()
最后在这个文档的头部(跟其它#include放在一起)加入你要d出的对话框的头文件,如:
#include"你要d出的对话框Dlg.h"
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)