(0)老式提示,隨鼠標指針的提示文本, 這是老式的, 下面有新型的
TrayIcon1.Hint:='asdfad';
第一步:在窗體中放置 TrayIcon 控件( Additional 面板中可以找到)。
第二步:設置 TrayIcon 的 Icon 圖標,載入一個 ICO 文件。
第三步:設置 TrayIcon 的 BalloonHint 為“ Delphi10.3塗磊”,設置 BalloonTitle 為“托盤測試”。設置 Visible 為 True 。
第四步:雙擊窗體,在 OnCreate 事件中寫入下面代碼:
TrayIcon1.Animate:=true; TrayIcon1.BalloonFlags := bfInfo;//bfNone,bfInfo,bfWarning,bfError四種類型 TrayIcon1.Hint:=self.Caption; TrayIcon1.BalloonTitle:='提示'; TrayIcon1.BalloonHint:='請注意后電腦即將進入鎖定狀態.'; TrayIcon1.BalloonTimeout:=1000; TrayIcon1.Visible:=True; TrayIcon1.ShowBalloonHint;
好了, F9 運行程序,一個“氣泡提示”就會出現在圖標上。屬性中的 BalloonTimeout 是設置“氣泡提示”多少秒后消失,默認是 1秒。
我們大家都知道,當有 QQ 消息時,托盤中會有一個閃爍圖標,使用 TrayIcon 控件可以非常容易地實現這個功能。
使圖標動起來,其實就是使用多個圖標進行切換。QQ 的閃爍圖標,其實就是使用的兩個圖標來進行切換的,一個是頭像圖標,一個是空的圖標。
下面我們就來模擬 QQ 頭像閃爍功能:
第一步:在窗體上放置 ImageList 控件(在 Win32 面板中可以找到)。
第二步:設置 ImageList 控件的 Width 和 Height 屬性為 32 ,然后雙擊 ImageList ,點擊“ Add ”按鈕添加圖標文件。第一個添加的是要顯示的圖標,第二個添加一個空的圖標(可以使用 Image Editor 新建一個 ICO 文件,然后直接保存即可得到一個空的圖標。)。
第三步:設置 TrayIcon 的 Icons 屬性為 ImageList1 (可以直接在列表中選擇)。
第四步:在 Form1 的 OnFormShow 事件中加入下面的代碼:
TrayIcon1.Animate := True;
TrayIcon1.AnimateInterval := 450;
當 Animate 為 True 時,將自動按 ImageList 控件中圖標的順序進行依次顯示,形成動態效果。 AnimateInterval 為每隔多少時間顯示下一個圖標。如果要停止閃爍,將 Animate 設置為 False 即可。
第一步:在窗體上放置PopupMenu1
第二步:雙擊PopupMenu1,添加菜單
第三步:設置 TrayIcon1 的 PopupMenu屬性為 PopupMenu1 (可以直接在下拉列表中選擇)。
運行中,在托盤圖標上右鍵即彈出菜單
第1步:在窗體上放置一個ApplicationEvents1,雙擊
第2步:隱藏主窗體
procedure TForm6.ApplicationEvents1Minimize(Sender: TObject); begin Hide(); // 隱藏主窗體 Self.WindowState := TWindowState.wsMinimized; // 最小化 不在任務欄上顯示 end;
第3步:顯示主窗口,
procedure TForm6.N12Click(Sender: TObject); // 返回,顯示主窗口 begin Self.Show(); Self.WindowState := TWindowState.wsNormal; Application.BringToFront(); // 前靠 end;
雙擊托盤圖標,顯示主窗口,復用上面代碼