微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

delphi实现托盘

如果自己从头做的话,需要定义一个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;

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐