Skip to content

Commit 143f9bf

Browse files
committed
add Trayicon
1 parent b8da9ed commit 143f9bf

File tree

4 files changed

+36
-3
lines changed

4 files changed

+36
-3
lines changed

Win32/debug/browse.exe

0 Bytes
Binary file not shown.

Win32/debug/niu_new.exe

1 KB
Binary file not shown.

ufrmMain.dfm

+18
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@ object frmMain: TfrmMain
109109
MenusAlphaBlendAnimation = False
110110
MenusAlphaBlendValue = 200
111111
SkinData = dbMoudle.spSkinData1
112+
MenusSkinData = dbMoudle.spSkinData1
112113
MinHeight = 0
113114
MinWidth = 0
114115
MaxHeight = 0
@@ -122,4 +123,21 @@ object frmMain: TfrmMain
122123
Left = 72
123124
Top = 56
124125
end
126+
object spTrayIcon1: TspTrayIcon
127+
AnimateTimerInterval = 0
128+
IconIndex = 0
129+
PopupMenu = spSkinPopupMenu1
130+
MinimizeToTray = True
131+
OnDblClick = spTrayIcon1DblClick
132+
Left = 72
133+
Top = 352
134+
end
135+
object spSkinPopupMenu1: TspSkinPopupMenu
136+
Left = 72
137+
Top = 416
138+
object mnExitApp: TMenuItem
139+
Caption = #36864#20986
140+
OnClick = mnExitAppClick
141+
end
142+
end
125143
end

ufrmMain.pas

+18-3
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,21 @@ interface
88
Controls, Forms, SkinData, DynamicSkinForm,
99
uCEFChromium,
1010
uframeChrome,
11-
Dialogs, StdCtrls;
11+
Dialogs, StdCtrls, ExtCtrls, spTrayIcon, Menus, SkinMenus;
1212

1313
type
1414
TfrmMain = class(TForm)
1515
frameChrome1: TframeChrome;
1616
DSF: TspDynamicSkinForm;
17+
spTrayIcon1: TspTrayIcon;
18+
spSkinPopupMenu1: TspSkinPopupMenu;
19+
mnExitApp: TMenuItem;
1720
procedure FormCreate(Sender: TObject);
1821
procedure FormDestroy(Sender: TObject);
1922
procedure FormShow(Sender: TObject);
2023
procedure FormCloseQuery(Sender: TObject; var CanClose: Boolean);
24+
procedure spTrayIcon1DblClick(Sender: TObject);
25+
procedure mnExitAppClick(Sender: TObject);
2126
private
2227
{ Private declarations }
2328
// 加载主页,因为不能直接加载PHP,
@@ -98,8 +103,6 @@ procedure TfrmMain.FormDestroy(Sender: TObject);
98103
procedure TfrmMain.FormShow(Sender: TObject);
99104
begin
100105
frameChrome1.setInfo(Self, unConfig.FIndexUrl);
101-
102-
103106
end;
104107

105108
procedure TfrmMain.loadMainConfig;
@@ -110,6 +113,18 @@ procedure TfrmMain.loadMainConfig;
110113

111114
end;
112115

116+
procedure TfrmMain.mnExitAppClick(Sender: TObject);
117+
begin
118+
Application.Terminate;
119+
end;
120+
121+
procedure TfrmMain.spTrayIcon1DblClick(Sender: TObject);
122+
begin
123+
Self.Show();
124+
Self.WindowState := TWindowState.wsNormal;
125+
Application.BringToFront(); // 前靠
126+
end;
127+
113128
initialization
114129

115130
end.

0 commit comments

Comments
 (0)