• Delphi 最小化托盘


    2009-07-16 11:30

    uses ShellAPI;

    const
        WM_BARICON=WM_USER+200;
        sc_DragMove:longint=$F012;
        WM_ACTIVE_CLIENT = WM_USER + 1000;

    public

    procedure message WM_SYSCOMMAND;
    proceduremessage WM_BARICON;

    procedure
    var



    begin
    if Message.WParam = SC_CLOSE then //关闭窗口
    begin
        Client.Close;
        exit;
    end;
    if Message.WParam = SC_ICON then //最小化到托盘区
        begin
        //如果用户最小化窗口则将窗口隐藏并在任务栏上添加图标
          lpData := new(PNotifyIconDataA);
          lpData.cbSize := 88;
         // SizeOf(PNotifyIconDataA);
          lpData.Wnd := Client.Handle;
          lpData.hIcon := application.Icon.Handle;
          lpData.uCallbackMessage := WM_BARICON;
          lpData.uID :=0;
          lpData.szTip := '紫金软件';
          lpData.uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
          Shell_NotifyIcon(NIM_ADD,lpData);
          dispose(lpData);
          Client.Visible := False;


    end
    else
    begin
    //如果是其它的SystemCommand消息则调用系统缺省处理函数处理之。
        DefWindowProc(Handle,Message.Msg,Message.WParam,Message.LParam);

    end;
    end;


    var

    begin
    //if (Message.LParam = WM_RBUTTONDOWN) then //鼠标右键
    if (Message.LParam = WM_LBUTTONDOWN) then
    begin
    //如果用户点击任务栏图标则将图标删除并回复窗口。
        lpData := new(PNotifyIconDataA);
        lpData.cbSize := 88;//SizeOf(PNotifyIconDataA);
        lpData.Wnd := Client.Handle;
        lpData.hIcon := application.Icon.Handle;
        lpData.uCallbackMessage := WM_BARICON;
        lpData.uID :=0;
        lpData.szTip := '紫金软件';
        lpData.uFlags := NIF_ICON or NIF_MESSAGE or NIF_TIP;
        Shell_NotifyIcon(NIM_DELETE,lpData);
        dispose(lpData);
        Client.Visible := True;

    end;
    end;

  • 相关阅读:
    Java之路---Day09(继承)
    Java之路---Day08
    Java之路---Day07
    Java之路---Day06
    转载:js 创建对象、属性、方法
    Javascript类型检测
    jQuery 如何写插件
    js浮点数精度问题
    IE7.JS解决IE兼容性问题方法
    CSS 中文字体的英文名称 (simhei, simsun) 宋体 微软雅黑
  • 原文地址:https://www.cnblogs.com/beeone/p/1846932.html
Copyright © 2020-2023  润新知