Delphi 最小化程序到任務欄托盤 增加右鍵PopMenu
阿新 • • 發佈:2018-03-23
控制 comment 處理 popu 是否 caf AC oar RM
在做中間層時,中間層往往不需要點擊關閉時立刻關閉,而是最小化到托盤。故而特意隱藏關閉按鈕功能。
1)隱藏退出功能 用PopMenu退出菜單代替
1.增加popMenu退出菜單,綁定到窗體
2.增加變量控制是否真的退出b_isClose;//True 退出 False 不退出
[delphi] view plain copy
- b_isClose:Boolean; //True 退出 False 不退出
3.初始化b_isClose 在FormCreate或者FormShow事件中初始化 設置為False
[delphi] view plain copy
- procedure TForm1.FormShow(Sender: TObject);
- begin
- b_isClose:=False;
- end;
4.PopMenu增加退出事件
[delphi] view plain copy
- procedure TForm1.pmExitClick(Sender: TObject);
- begin
- b_isclose := true;//設置為真正退出
- Close;//調用系統退出事件 響應函數 FormClose
- end;
5.退出時依據是否真正退出做處理
[delphi] view plain copy
- procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
- begin
- if b_isclose then
- begin
- action := cafree;//真正退出
- end
- else
- begin
- action := canone;//修改事件類型不退出
- end;
- end;
2)最小化到托盤
修改FormClose事件,增加語句:
[delphi] view plain copy
- Application.Minimize;//最小化應用
如下:
[delphi] view plain copy- procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
- begin
- if b_isclose then
- begin
- action := cafree;//真正退出
- end
- else
- begin
- action := canone;//修改事件類型不退出
- Application.Minimize;//最小化應用
- end;
- end;
3) 增加托盤中右鍵彈出菜單
1.安裝拖放增加第三方控件TRzTrayIcon到界面, 取名:
[delphi] view plain copy- RzTrayIcon1: TRzTrayIcon;
2. 修改FormClose事件,增加語句:
[delphi] view plain copy
- RzTrayIcon1.PopupMenu := pmFrmMenu;//綁定右下角PopMenu
最終如下:
[delphi] view plain copy
- procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
- begin
- if b_isclose then
- begin
- action := cafree;//真正退出
- end
- else
- begin
- action := canone;//修改事件類型不退出
- Application.Minimize;//最小化應用
- RzTrayIcon1.PopupMenu := pmFrmMenu;//綁定右下角PopMenu
- end;
- end;
Delphi 最小化程序到任務欄托盤 增加右鍵PopMenu