功能說明 : 避免程式被不小心關閉(按右上角的[X]會縮小, 不會關閉), 不要佔用下方工具列, 縮小到系統匣, 縮小時右下角出現提示訊息.
其他功能說明 : 複製指定檔案, 指定來源及目的路徑, 會遞迴往下尋找資料夾, 目的路徑自動複製來源資料夾的結構.
config : 指定檔案, 指定來源及目的路徑.
執行畫面
按[X]縮小到系統匣.
要關閉程式需在系統匣圖示按右鍵, 點[Exit]離開.
1. 先拉Layout
NotifyIcon : notifyIcon1 系統匣圖示
*Text一定要設定, 否則縮小到系統匣會看不到. 指定系統匣用的選單.
ContextMenuStrip : contextMenuStrip1 系統匣選單
TextBox : textBox1 用來顯示訊息
BackgroundWorker : backgroundWorker1 使用背景作業複製檔案, 避免視窗凍結
*設定 : 可以即時回報訊息, 可以取消背景作業.
Timer : timer1 計時器, 才能每隔一段時間執行檔案複製
2. 用到的事件
NotifyIcon : notifyIcon1 系統匣圖示
*單擊 跟 雙擊 圖示, 都可開啟畫面.
ToolStripMenuItem : exitToolStripMenuItem 系統匣選單項目
*因為按[X]不能關閉程式, 所以系統匣提供選單[Exit]讓使用者關閉程式.
BackgroundWorker : backgroundWorker1 背景作業
*指定各個背景作業事件, 因為要能夠回報訊息, 所以有宣告一個全域變數msg存訊息.
*DoWork裡面不能變動到外部元件(例如寫 TextBox.Text="xxx" 這樣是不行的).
Timer : timer1 計時器
Form :
*攔截關閉事件, 判斷是要關閉還是要最小化到系統匣.
*這裡是用 this.WindowState != FormWindowState.Minimized 來判斷. 當視窗不是最小化的時候, 就取消關閉Form事件, 并顯示系統匣圖示.
Others :
宣告一個全域變數msg存訊息.
留言列表