C#_获取鼠标所在处的窗口句柄

/// <summary>
/// 返回包含了指定点的窗口的句柄。忽略屏蔽、隐藏以及透明窗口
/// </summary>
/// <param name="Point">指定的鼠标坐标</param>
/// <returns>鼠标坐标处的窗口句柄,如果没有,返回</returns>
[DllImport("user32.dll")]
internal static extern IntPtr WindowFromPoint(Point Point);

/// <summary>
/// 获取鼠标处的坐标
/// </summary>
/// <param name="lpPoint">随同指针在屏幕像素坐标中的位置载入的一个结构</param>
/// <returns>非零表示成功,零表示失败</returns>
[DllImport("user32.dll")]
internal static extern bool GetCursorPos(out Point lpPoint);

private void timer1_Tick(object sender, EventArgs e)
{
    Point p;
    GetCursorPos(out p);//获取鼠标坐标
    this.Text = WindowFromPoint(p).ToString("X");//转换为16进制
}
posted @ 2010-07-12 12:44  小 .xin  阅读(3493)  评论(0编辑  收藏  举报
回到页首