程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> 關於C語言 >> C#處理鼠標和鍵盤事件(1)

C#處理鼠標和鍵盤事件(1)

編輯:關於C語言

在程序運行中,產生事件的主體有很多,其中尤其以鍵盤和鼠標為最多。本文就來探討一下在C#中和這二個主體相關的事件的處理過程。

一.本文介紹的程序設計和運行的軟件環境:

(1).微軟公司視窗2000服務器版

(2)..Net FrameWork SDK Beta 2

二.C#中處理鼠標相關的事件:

鼠標相關的事件大致有六種,分別是 :

"MouseHover"、"MouseLeave"、"MouseEnter"、"MouseMove"、"MouseDown"和"MouseUp"。

(1).如何在C#程序中定義這些事件:

在C#中是通過不同的Delegate來描述上述事件,其中描述"MouseHover"、"MouseLeave"、"MouseEnter"事件的Delegate是"EventHandler",而描述後面的三個事件的Delegate是"MouseEventHandler"來描述。這二個Delegate分別被封裝在不同的命名空間,其中"EventHandler"被封裝在"System"命名空間;"MouseEventHandler"被封裝在"Syetem.Windows.Froms"命名空間中的。在為"MouseHover"、"MouseLeave"、"MouseEnter"事件通過數據的類是"EventArgs",他也被封裝在"System"命名空間中;而為後面的三個事件提供數據的類是"MouseEventArgs",他卻被封裝在"Syetem.Windows.Froms"命名空間。以上這些就決定了在C#中定義這些事件和響應這些事件有著不同的處理辦法。下面就來介紹這些不同點。

對於上述的前三個事件,是用以下語法來定義的:

"組件名稱"."事件名稱"+= new System.EventHandler("事件名稱");

下面是程序中具體實現代碼:

button1.MouseLeave += new Syetem.EvenHandler(button1_MLeave);

在完成了事件的定義以後,就要在程序中加入響應此事件的代碼,否則程序編譯的時候會報錯。下面是響應上面事件的基本結構。

private void button1_MLeave ( object sender , System.EventArgs e )
{
此處加入響應此事件的代碼
}

定義"MouseMove"、"MouseDown"和"MouseUp"事件的語法和前面介紹的三個事件大致相同,具體如下:

"組件名稱"."事件名稱"+= new System.Windows.Forms. MouseEventHandler("事件名稱");

下面是程序中具體實現代碼:

button1.MouseMove += new System.Windows.Forms.MouseEventHandler(button1_MMove);

下面是響應上面事件的基本結構:

private void button1_MMove ( object sender , System.Windows.Forms. MouseEventArgs e )
{
此處加入響應此事件的代碼
}

注釋:在上述程序中的"button1"是定義的一個按鈕組件。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved