C#窗體事件應用淺析
作者:guobin1775
C#窗體事件應用是如何的呢?我們在這里向你介紹了C#窗體的最大化、最小化按鈕事件的處理詳解,希望對你了解和學習C#窗體事件有所幫助。
C#窗體事件應用中的C#窗體的最大化、最小化按鈕事件是如何解決的呢?我們知道C#窗體的操作是要涉及一些方法和操作的,那么下面我們來詳細看看具體的操作是什么,希望對你有所幫助。
C#窗體事件應用一、捕獲最大化、最小化事件
處理發(fā)生在最大化、最小化按鈕事件之后可以判斷用戶是否點擊了最大化、最小化按鈕,并根據(jù)點擊按鈕的不同做相應處理。
- protected override void OnResize(EventArgs e)
- {
- if(WindowState == FormWindowState.Maximized)
- {
- //最大化時所需的操作
- MessageBox.Show("max");
- }
- else if(WindowState == FormWindowState.Minimized)
- {
- //最小化時所需的操作
- MessageBox.Show("min");
- }
- }
C#窗體事件應用二、重寫最大化、最小化事件
重寫可實現(xiàn)對最大化、最小化按鈕事件的攔截,使程序按自己的方式運行。
- private int WM_SYSCOMMAND = 0x112;
- private long SC_MAXIMIZE = 0xF030;
- private long SC_MINIMIZE = 0xF020;
- private long SC_CLOSE = 0xF060;
- protected override void WndProc(ref Message m)
- {
- if (m.Msg == WM_SYSCOMMAND)
- {
- if (m.WParam.ToInt64() == SC_MAXIMIZE)
- {
- //MessageBox.Show("MAXIMIZE ");
- return;
- }
- if (m.WParam.ToInt64() == SC_MINIMIZE)
- {
- //MessageBox.Show("MINIMIZE ");
- return;
- }
- if (m.WParam.ToInt64() == SC_CLOSE)
- {
- //MessageBox.Show("CLOSE ");
- return;
- }
- }
- base.WndProc(ref m);
- }
C#窗體事件應用的問題就向你介紹到這里,希望對你了解和學習C#窗體事件有所幫助。
【編輯推薦】
責任編輯:仲衡
來源:
新浪博客