我们知道在VC中可以用AfxMessageBox或者更灵活的MessageBox来实现消息框,但是有时候我们的要求不止于此,特别是在Vista和Windows 7下消息框的样式不好看,下面还有一个白栏。自己写了一个派生自CDialog的MessageBoxST类,模拟了消息框的实现,虽然不是特别完美,但基本功能已经实现,界面如下:
以上是用SkinSharp换肤 后的效果比较,下面介绍这个类的使用方法:
步骤一:新建一个基于对话框的工程,名字任意;
步骤二:插入一个对话框资源,更改其ID号为IDD_MESSAGE_DIALOG ;
步骤三:把MessageBoxST类添加进工程,在需要调用的地方添加头文件。例如:在对话框添加一个按钮,令其功能为弹出消息。添加头文件如下:
#include "MessageBoxST.h"
然后在功能函数里面,添加以下代码,包括MessageBoxST类,和原本的消息类做比较:
自定义MessageBoxST类
说明:①这个类只有两个函数,大家可以自行添加功能;
②这个类对中文支持比较好,有错误的话,请大家帮忙指出,指点一下。
MessageBoxST.h文件
MessageBoxST.cpp文件
特别声明 :代码中有注释的,要依据工程而修改,主要是文件头和对话框资源ID。
例子下载 :http://download.csdn.net/source/1935696