C#完成獲得鼠標句柄的辦法。本站提示廣大學習愛好者:(C#完成獲得鼠標句柄的辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是C#完成獲得鼠標句柄的辦法正文
本文實例講述了C#完成獲得鼠標句柄的辦法,分享給年夜家供年夜家參考。詳細完成辦法以下:
1、挪用user32.dll
(1)援用
using System.Runtime.InteropServices;
(2)挪用辦法
1、獲得窗口題目
[DllImport( "user32.dll" )] public static extern int GetWindowText( IntPtr hWnd, StringBuilder lpString,int nMaxCount );
注:hWnd 窗口句柄 lpString 窗口題目 nMaxCount 最年夜值
2、獲得類名
[DllImport( "user32.dll" )] public static extern int GetClassName( IntPtr hWnd, StringBuilder lpString,int nMaxCount );
注:hWnd 句柄 lpString 類名 nMaxCount 最年夜值
3、依據坐標獲得窗口句柄
[DllImport( "user32.dll" )] public static extern IntPtr WindowFromPoint(Point point);
注:point 坐標
2、顯示數據
(1) 獲得鼠標坐標
int x = Cursor.Position.X; int y = Cursor.Position.Y; this.textBox4.Text = string.Format( "({0},{1})" , x, y);
(2) 獲得句柄
Point p = new Point(x,y); IntPtr formHandle = WindowFromPoint(p); this.textBox1.Text = formHandle.ToString();
(3) 獲得窗口題目
GetWindowText(formHandle,title,title.Capacity); this.textBox2.Text = title.ToString();
(4)獲得窗體的類名
StringBuilder cllassName = new StringBuilder(); GetClassName(formHandle,cllassName,cllassName.Capacity); this.textBox3.Text = cllassName.ToString();
(5)Load事宜
this.timer1.Enabled = !this.timer1.Enabled;
注:靜態顯示信息
3、運轉成果以下圖所示:
4、完全實例代碼點擊此處本站下載。
願望本文所述對年夜家的C#法式設計有所贊助