一、加入TrayIcon
1、主窗体中放置 TrayIcon 控件( Additional 面板);
2、TrayIcon加入ICO文件;
3、设置TrayIcon.Visible 为 True 。
二、主窗体MainFrm处理
1、OnCreate 事件:
TrayIcon1.Animate:=true;
TrayIcon1.BalloonFlags := bfNone; // bfNone,bfInfo, bfWarning, bfError(默认,信息,警告,错误)
TrayIcon1.Hint:=self.Caption;
TrayIcon1.BalloonTitle:='提示';
TrayIcon1.BalloonHint:='2分钟进入托盘';
TrayIcon1.BalloonTimeout:=1000;
TrayIcon1.ShowBalloonHint;
上述代码,通过代码初始化参数。参数也可在编辑状态下控件进行参数设置。
2、OnShow 事件:
TrayIcon1.Icon := Application.Icon; // 托盘使用主程序ICon
TrayIcon1.SetDefaultIcon; // 托盘使用默认ICon
上述代码二选 一。
三、TrayIcon加一个PopupMenu
加入二个菜单项目,二个事件:
1、启动Tray隐藏主程序
Hide(); // 隐藏主窗体
Self.WindowState := TWindowState.wsMinimized; // 窗中最小化 任务栏上不显示
2、显示主程序
Self.Show();
Self.WindowState := TWindowState.wsNormal;
Application.BringToFront(); // 窗口靠前
四、加一个Timer
1、主窗口加一个全局变量,记录开机秒数。
var Miao:integer;
2、OnShow 事件:
Miao:=0;
3、OnTimer事件
Miao:=Miao+1;
if miao>=120 then
begin
Hide(); // 隐藏主窗体
Self.WindowState := TWindowState.wsMinimized; // 窗中最小化 任务栏上不显示
Timer1.Enabled:=False; // 关闭Timer1
end;
这样,程序启动120秒,进入托盘状态。