知识大全 获取鼠标的坐标

Posted 坐标

篇首语:有山必有路,有水必有渡。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 获取鼠标的坐标相关的知识,希望对你有一定的参考价值。

  view plainprint?

  「在窗体上获取相对于屏幕的坐标 」

  方法 public class Win [StructLayout(LayoutKind Sequential)] public struct POINT public int X public int Y

  public POINT(int x int y)

   this X = x this Y = y

  [DllImport( user dll CharSet = CharSet Auto)] public static extern bool GetCursorPos(out POINT pt)

  方法 Mouse GetPosition(this)

  方法 在鼠标mousemove事件中 e GetPosition(this)

  「获取全局鼠标坐标」

  using System using System Collections Generic using System Linq using System Text using System Windows using System Windows Controls using System Windows Data using System Windows Documents using System Windows Input using System Windows Media using System Windows Media Imaging using System Windows Navigation using System Windows Shapes using System Diagnostics using System Runtime InteropServices

  namespace wpfMouse /// <summary> /// MainWindow xaml 的交互逻辑/// </summary> public partial class MainWindow Window private LowLevelMouseProc _proc private  IntPtr _hookID = IntPtr Zero private   MSLLHOOKSTRUCT hookStruct private delegate IntPtr LowLevelMouseProc(int nCode IntPtr wParam IntPtr lParam)

  public MainWindow()

   InitializeComponent()

  pageLoad() private void pageLoad()

   _hookID = SetHook(_proc)

  private IntPtr SetHook(LowLevelMouseProc proc)

   using (Process curProcess = Process GetCurrentProcess())

  using (ProcessModule curModule = curProcess MainModule)

   _proc = HookCallback return SetWindowsHookEx(WH_MOUSE_LL _proc GetModuleHandle(curModule ModuleName) ) private  IntPtr HookCallback(int nCode IntPtr wParam IntPtr lParam)

  

  if (nCode >= && MouseMessages WM_MOUSEMOVE == (MouseMessages)wParam)

  

  hookStruct = (MSLLHOOKSTRUCT)Marshal PtrToStructure(lParam typeof(MSLLHOOKSTRUCT)) //释放Marshal FreeCoTaskMem(lParam)

  labMouse Content = hookStruct pt x + + hookStruct pt y

  

  return CallNextHookEx(_hookID nCode wParam lParam) private const int WH_MOUSE_LL =

  private enum MouseMessages WM_LBUTTONDOWN = x WM_LBUTTONUP = x WM_MOUSEMOVE = x WM_MOUSEWHEEL = x A WM_RBUTTONDOWN = x WM_RBUTTONUP = x [StructLayout(LayoutKind Sequential)] private struct POINT public int x public int y

  [StructLayout(LayoutKind Sequential)] private struct MSLLHOOKSTRUCT public POINT pt public uint mouseData public uint flags public uint time public IntPtr dwExtraInfo

  [DllImport( user dll CharSet = CharSet Auto SetLastError = true)] private static extern IntPtr SetWindowsHookEx(int idHook LowLevelMouseProc lpfn IntPtr hMod uint dwThreadId)

  [DllImport( user dll CharSet = CharSet Auto SetLastError = true)] [return MarshalAs(UnmanagedType Bool)] private static extern bool UnhookWindowsHookEx(IntPtr h)

  [DllImport( user dll CharSet = CharSet Auto SetLastError = true)] private static extern IntPtr CallNextHookEx(IntPtr h int nCode IntPtr wParam IntPtr lParam)

  [DllImport( kernel dll CharSet = CharSet Auto SetLastError = true)] private static extern IntPtr GetModuleHandle(string lpModuleName)

  private void Window_Closed(object sender EventArgs e)

   UnhookWindowsHookEx(_hookID)

cha138/Article/program/net/201311/13453

相关参考

知识大全 Java获取窗口鼠标坐标以及键盘按键

Java获取窗口鼠标坐标以及键盘按键  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  Java中的

知识大全 通过JS得到当前焦点(鼠标)的坐标

通过JS得到当前焦点(鼠标)的坐标  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixinz

知识大全 js获取元素到文档区域document的坐标方法

  获取页面中元素到文档区域document的横向纵向坐标的两种方法及其比较  在js控制元素运动的过程中对于页面元素坐标位置的获取是经常用到的这里主要总结下两种方法  一通过叠加元素对象和它的off

知识大全 js 跨浏览器获取鼠标按键的值

  documentonmousedown=function(e)cha138/Article/program/Java/JSP/201311/20465

球面坐标系概说

为了确定一个地点在地球上的位置,人们设置地理坐标系;同理,为了确定天体在天球上的位置,需要设置天球坐标系。地理坐标系和天球坐标系,都是球面坐标系。在天文学上,根据不同的需要,使用不同的天球坐标系。各种

各种天球坐标的区别

天球有各种不同的坐标系。因此,同一天体就有各种不同的坐标。不同的坐标系之间,既存在区别,又有相互联系。  (l)地平坐标系与第一赤道坐标系  这两种坐标系都属于右旋坐标系,它们的经度(方位与时角)都是

赤道坐标

一种“天文坐标“。以赤经和赤纬两个坐标表示天球上任一天体的位置。由春分点的赤经圈(时圈)与通过该天体的赤经圈在北天极所成的角度,或在天赤道上所夹的弧长,称为该天体的赤经计量方向自春分点起沿着与天球周日

黄道坐标

一种“天文坐标”。天体在天球上的位置由黄经和黄纬两个坐标表示。春分点的黄经圈与通过某一天体的黄经圈在黄极所成的角度,或在黄道上所夹的弧长,叫做该天体的黄经。计量方向为在黄道上由春分点起,沿着与太阳周年

知识大全 在应用程序中跟踪MOUSE的坐标

在应用程序中跟踪MOUSE的坐标  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  第一步建一DLL

知识大全 Java新学法之Robocode基本原理之坐标锁定(下)

Java新学法之Robocode基本原理之坐标锁定(下)  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下