C#實現(xiàn)WinForm捕獲最小化事件的方法
更新時間:2014年08月26日 15:24:00 投稿:shichen2014
這篇文章主要介紹了C#實現(xiàn)WinForm捕獲最小化事件的方法,需要的朋友可以參考下
一般來說,雖然Form類沒有提供Minimize的事件,但還是可以通過重載Deactive來實現(xiàn)WinForm捕獲最小化事件。
實現(xiàn)方法為:當Form失去焦點后,測試WindowState取得Form狀態(tài),若為Minimized既是最小化事件。
本例為最小化后隱藏窗口:
還有種方法更加直接,重載WndProc:
實現(xiàn)代碼如下:
const int WM_SYSCOMMAND = 0x112; const int SC_CLOSE = 0xF060; const int SC_MINIMIZE = 0xF020; const int SC_MAXIMIZE = 0xF030; protected override void WndProc(ref Message m) { if (m.Msg == WM_SYSCOMMAND) { if (m.WParam.ToInt32() == SC_MINIMIZE) { this.Visible = false; return; } } base.WndProc(ref m); }
private void Form1_Deactivate(object sender, EventArgs e) { if (this.WindowState == FormWindowState.Minimized) this.Visible = false; }
希望本文所述實例對大家C#程序設計有所幫助。
相關文章
c# WPF設置軟件界面背景為MediaElement并播放視頻
這篇文章主要介紹了c# WPF如何設置軟件界面背景為MediaElement并播放視頻,幫助大家更好的理解和學習使用c#,感興趣的朋友可以了解下2021-03-03C#采用mouse_event函數(shù)實現(xiàn)模擬鼠標功能
這篇文章主要介紹了C#模擬鼠標點擊小功能,通過代碼向大家做分析,需要的朋友可以參考下2015-07-07