我想要当鼠标放在托盘图标上时每次显示的消息都不一样,比如鼠标在托盘图标上时显示当前时间。请问该如何实现?麻烦给出详细代码,谢谢
解决方案 »
- 菜鸟问题,走过的路过的,进来看看吧~~~大家帮忙啦!
- 有关ADODataSet.LoadFromFile问题
- tonylk(=www.tonixsoft.com=) 请进(关于公司信息汇总到一台机器上,用什么方案比较好)
- 我用indy写了以下发邮件程序,不能成功发送邮件(运行无错,可是收不到),请教正确方法
- 能不能在一个窗体内实现窗体的显示和隐藏
- ◆◆◆如何在网吧中让其他任意一台win98电脑死机??
- 高分求教,高手请指点
- ftp传输过程中网络断开的问题
- 关于socket通讯及数据同步的问题,我是初学socket者希望能得到朋友的详细解答,谢谢!
- 为什么我用stringgrid的paintto方法打印出来的控件只有在左上角的一小块
- 哪错呢
- 关于这段你c++转pascal的截屏代码的问题
用shellnotify这个api来给系统托盘增加删除图标......ms一言难尽,还是看看那些控件的源码吧.
{还是接点分吧。以下代码运行后自动在托盘添加程序图标,每次鼠标指向图标时显示当前日期时间}unit Unit1;interfaceuses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Shellapi, ExtCtrls, Menus;const
MouseMsg = WM_User + 1;type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
private
{ Private declarations }
procedure MouseMessage(var Msg: TMsg); message MouseMsg;
public
{ Public declarations }
end;var
Form1: TForm1;
ntida:TNotifyIcondataA;implementation{$R *.dfm}procedure TForm1.FormCreate(Sender: TObject);
begin
Move(FormatDatetime('YYYY-MM-DD hh:nn:ss', Now)[1], ntida.szTip, 64);
ntida.cbSize := sizeof(tnotifyicondataa);
ntida.Wnd := handle;
ntida.hIcon := Application.Icon.Handle;
ntida.uFlags := nif_icon + nif_tip + nif_message;
ntida.uCallbackMessage := MouseMsg;
shell_notifyicona(NIM_ADD, @ntida);
end;procedure TForm1.MouseMessage(var Msg: TMsg);
begin
Move(FormatDatetime('YYYY-MM-DD hh:nn:ss', Now)[1], ntida.szTip, 64);
shell_notifyicona(NIM_MODIFY, @ntida);
end;procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
begin
shell_notifyicona(NIM_DELETE, @ntida);
end;end.