一个动态链接库(mfc扩展库)及其测试程序的例子(系统托盘图标)
http://www.freewebs.com/chenlifu/systemtraydllupdate.rar
一个动态链接库(mfc扩展库)及其测试程序的例子(系统托盘图标)
.升级版.
动态连接库输出一个类:
class __declspec( dllexport ) csystemtray : public cwnd
{
//...........
};
这个类封装了系统托盘添加删除修改的操作.
并且提供许多便捷的途径修改托盘属性.
可以更改托盘图标;
可以动态显示托盘图标(显示的图标由调用者指定);
可以更改提示字符串.
可以改变托盘发出的消息.
可以弹出或者不弹出菜单;
可以改变弹出的菜单;
可以改变处理菜单命令的窗口.
可以指定弹出菜单的(鼠标)消息,
默认是左键或者右键按下弹出默认菜单,
可以更改为仅是左键或者右键按下弹出菜单,
或者仅中键按下弹出菜单,或者鼠标移动弹出菜单.
可以指定"不同的鼠标消息弹出不同的菜单".
可以将托盘通知消息转发到指定的窗口并且可以动态改变,
但是接收通知消息的窗口需要定义通知消息的处理函数.
以上功能我没有全部测试过,所以不知道有什么样的bug,
希望哪位朋友发现了bug或者有其他建议给我发邮件.
文件名带d结尾的库文件是debug版,其他的是release版.
动态链接库输出文件位于export文件夹,
测试程序位于systemtraydlltest文件夹.
含全部源代码,可以直接编译(vc6).
一个动态连接库(mfc扩展库)及其测试程序的例子(一个定时关闭的消息对话框).
http://www.freewebs.com/chenlifu/automessageboxdlle.rar
动态连接库输出:
一个类:
class __declspec( dllexport ) cautomessagebox : public cdialog
{
//...
};
一个全局函数:
int __declspec( dllexport ) automessagebox( int ninterval, const cstring& strmessage, const cstring& strtitle );
这个全局函数只是简单的调用了上面的类.
输出的类和函数完成的功能就是:
显示一个模式对话框,并在指定的时间(以秒为单位)之后自动关闭这个对话框.
其中strmessage和strtitle需要格式化的字符串,
预留一个显示秒数的地方,参考如下默认值.
默认值:
ninterval = 30;//对话框显示时间,以秒为单位,默认为30秒!
strmessage = "对话框将在 %d 秒之后关闭...";//默认显示的消息
strtitle = "剩余时间: %d 秒";//默认显示的标题
动态连接库输出的头文件和库位于export文件夹,
文件名以d结尾的是debug版,另外的是release版.
测试程序位于文件夹testautomessagebox.
附全部源代码,可以直接编译(vc6).
作者:陈立福
邮件:xunknown@126.com
主页:www.freewebs.com/xunknown