問(wèn)題來(lái)源:
http://www.cnblogs.com/del/archive/2009/05/15/1458017.html#1549351
代碼文件:
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}
{關(guān)閉}
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.Terminate;
end;
{點(diǎn)擊關(guān)閉按鈕時(shí)讓窗體最小化到系統(tǒng)托盤(pán)}
procedure TForm1.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
Tag := Ord(WindowState);
WindowState := wsMinimized;
TrayIcon1.SetDefaultIcon;
TrayIcon1.Visible := True;
Hide;
CanClose := False;
end;
{點(diǎn)擊系統(tǒng)托盤(pán)中的圖標(biāo)恢復(fù)窗口}
procedure TForm1.TrayIcon1Click(Sender: TObject);
begin
TrayIcon1.Visible := False;
Show;
WindowState := TWindowState(tag);
SetForegroundWindow(Handle);
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
OnCloseQuery = FormCloseQuery
PixelsPerInch = 96
TextHeight = 13
object Button1: TButton
Left = 232
Top = 40
Width = 75
Height = 25
Caption = 'Button1'
TabOrder = 0
OnClick = Button1Click
end
object TrayIcon1: TTrayIcon
OnClick = TrayIcon1Click
Left = 160
Top = 104
end
end