delphi实现托盘

原创 2015年11月18日 16:26:24

如果自己从头做的话,需要定义一个TNotifyIconData类型变量,这个变量定义在 ShellAPI 单元中。

需要设置这个变量的这几个值。 

  _NOTIFYICONDATAA = record
    cbSize: DWORD;
    Wnd: HWND;
    uID: UINT;
    uFlags: UINT;
    uCallbackMessage: UINT;
    hIcon: HICON;
    szTip: array [0..63] of AnsiChar;
  end;

例如:

const WM_NID = WM_USER + 100;

procedure WMNID(var msg: TMessage); message WM_NID;

 with NOtifyIcon do

begin

cbsize := SIzeof(TNOtifyIconData);  // 记录大小

wnd := self; //窗体句柄

uID := 1; // 图标iD

        UFLagS :=  NIF_MESSAGE      or NIF_ICON or NIF_ TIP;

       ucallbackMessage:= WM_NID; // 自定义消息

      Hicon := application.icon.handle;

     szTIP := 'pxb';

  {$EXTERNALSYM NIF_MESSAGE}
  NIF_MESSAGE     = $00000001;
  {$EXTERNALSYM NIF_ICON}
  NIF_ICON        = $00000002;
  {$EXTERNALSYM NIF_TIP}
  NIF_TIP         = $00000004;

end;

shell_notifyICON(sss.add,@notifyicno);

case msg.lparams of

  WM_RButtonClick:

begin

end;

WM_LButtonDBclidk:

begin

end;

end;

可以使用第三方控件,可以设置 showballMessage();显示气泡提示。通过设置,可以很快的做出一个托盘应用。 TZTRayICON;

Delphi 最小化程序到任务栏托盘 增加右键PopMenu

在做中间层时,中间层往往不需要点击关闭时立刻关闭,而是最小化到托盘。故而特意隐藏关闭按钮功能。        1)隐藏退出功能 用PopMenu退出菜单代替              1.增加pop...
  • yangjian900109
  • yangjian900109
  • 2016年04月02日 11:25
  • 1991

Delphi 7下最小化到系统托盘

在Delphi 7下要制作系统托盘,只能制作一个比较简单的系统托盘,因为ShellAPI文件定义的TNotifyIconData结构体是比较早的版本。定义如下: 1 2 3 ...
  • zisongjia
  • zisongjia
  • 2017年03月29日 17:21
  • 464

Delphi 三种气泡提示效果

一、方法一 说明:这个效果不好,鼠标必须放在按钮上,气泡提示才可以出来,如果鼠标在按钮的范围之外,        用回车键点击按钮也不会激活气泡提示。 unitUnit1; interfa...
  • gzxiaorou
  • gzxiaorou
  • 2015年03月22日 15:11
  • 2086

delphi创建具有托盘的服务程序(service)

Windows 2000/XP和2003等支持一种叫做"服务程序"的东西.程序作为服务启动有以下几个好处:     (1)不用登陆进系统即可运行.     (2)具有SYSTEM特权.所以你在进程...
  • Trassion
  • Trassion
  • 2013年08月01日 08:28
  • 4184

delphi创建具有托盘的服务程序(service)

Windows 2000/XP和2003等支持一种叫做"服务程序"的东西.程序作为服务启动有以下几个好处:     (1)不用登陆进系统即可运行.     (2)具有SYSTEM特权.所以你...
  • chinmusam
  • chinmusam
  • 2014年02月25日 21:37
  • 4751

C++遍历托盘图标,获取输出坐标等信息源码

#include #include #include #include #include using namespace std; typedef BOOL (WINAPI *LPFN_...
  • zhuofeilong
  • zhuofeilong
  • 2017年07月08日 17:30
  • 365

Win32 API 实现系统托盘程序

托盘程序就是运行在Windows系统托盘的程序,就是在桌面右下角的显示区域的一个小图标。通常托盘程序带有几种功能:托盘菜单,托盘图标,气泡提示,托盘提示。例如QQ收到消息后,会在系统右下角显示闪动QQ...
  • cwqcwk1
  • cwqcwk1
  • 2013年11月05日 17:53
  • 3986

MFC系统托盘的实现

通常电脑里边的软件,当你打开后会在电脑最右下角的任务栏上生成一个系统托盘,当你点击最小化或者点击关闭按钮后,若想恢复窗口,可以左键双击或者单机这个系统图标,同时鼠标右键点击,又会有其他的菜单弹出,比如...
  • u013051748
  • u013051748
  • 2015年05月10日 16:34
  • 1388

修复官方duilib-添加托盘图标

注:只是添加托盘图标,不是添加托盘右键点击菜单官方duilib下载:https://github.com/duilib/duilib在使用官方duilib的时候,要添加托盘图标功能,发现不知道怎么添加...
  • xiaonaiquan
  • xiaonaiquan
  • 2017年06月24日 13:03
  • 484

vc托盘图标的实现以及托盘右键菜单的响应

#define  UM_SHOW_TORY_ICON WM_USER + 200 + 1      // 用于响应托盘图标消息 void addToTray() { HINSTANCE ...
  • qingzai_
  • qingzai_
  • 2015年02月28日 17:41
  • 1466
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:delphi实现托盘
举报原因:
原因补充:

(最多只允许输入30个字)