簡單實現系統托盤

使用 Delphi 提供的 TTrayIcon 類, 兩三行程序甚至不寫程序(設計時選擇幾下)即可實現.

設計時的準備工作:
1、添加 TTrayIcon、TPopupMenu 控件, TPopupMenu 用於托盤的右鍵菜單.
2、隨意給 TPopupMenu 添加些菜單項.

代碼文件:

unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, ExtCtrls;

type
  TForm1 = class(TForm)
    TrayIcon1: TTrayIcon;
    PopupMenu1: TPopupMenu;
    aaa1: TMenuItem;
    bbb1: TMenuItem;
    ccc1: TMenuItem;
    procedure FormCreate(Sender: TObject);
    procedure TrayIcon1DblClick(Sender: TObject);
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  {指定圖標, 這裏是用程序相同的圖標; 也可在設計時選擇, 還可以指定一個圖標組, 再用 IconIndex 切換}
  TrayIcon1.Icon := Application.Icon;
  {指定右鍵菜單}
  TrayIcon1.PopupMenu := PopupMenu1;
  {使之可見}
  TrayIcon1.Visible := True;
end;

{給圖標添加到雙擊事件}
procedure TForm1.TrayIcon1DblClick(Sender: TObject);
begin
  ShowMessage('OnDblClick');
end;

end.

窗體文件:

object Form1: TForm1
  Left = 0
  Top = 0
  Caption = 'Form1'
  ClientHeight = 206
  ClientWidth = 339
  Color = clBtnFace
  Font.Charset = DEFAULT_CHARSET
  Font.Color = clWindowText
  Font.Height = -11
  Font.Name = 'Tahoma'
  Font.Style = []
  OldCreateOrder = False
  OnCreate = FormCreate
  PixelsPerInch = 96
  TextHeight = 13
  object TrayIcon1: TTrayIcon
    OnDblClick = TrayIcon1DblClick
    Left = 152
    Top = 88
  end
  object PopupMenu1: TPopupMenu
    Left = 216
    Top = 88
    object aaa1: TMenuItem
      Caption = 'aaa'
    end
    object bbb1: TMenuItem
      Caption = 'bbb'
    end
    object ccc1: TMenuItem
      Caption = 'ccc'
    end
  end
end
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章