- 人气:
- 放大
- 缩小
- 二维码
- 赞赏
delphi TrayIcon1如何把窗体关闭到系统托盘
代码文件:
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, StdCtrls, AppEvnts;
type
TForm1 = class(TForm)
TrayIcon1: TTrayIcon;
Button1: TButton;
procedure TrayIcon1Click(Sender: TObject);
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
procedure Button1Click(Sender: TObject);
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
{关闭}
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.Terminate;
end;
{点击关闭按钮时让窗体最小化到系统托盘}
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
Tag := Ord(WindowState);
WindowState := wsMinimized;
TrayIcon1.SetDefaultIcon;
TrayIcon1.Visible := True;
Hide;
CanClose := False;
end;
{点击系统托盘中的图标恢复窗口}
procedure TForm1.TrayIcon1Click(Sender: TObject);
begin
TrayIcon1.Visible := False;
Show;
WindowState := TWindowState(tag);
SetForegroundWindow(Handle);
end;
end.