知识大全 获取鼠标的坐标
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获取窗口鼠标坐标以及键盘按键 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! Java中的
通过JS得到当前焦点(鼠标)的坐标 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!lishixinz
获取页面中元素到文档区域document的横向纵向坐标的两种方法及其比较 在js控制元素运动的过程中对于页面元素坐标位置的获取是经常用到的这里主要总结下两种方法 一通过叠加元素对象和它的off
documentonmousedown=function(e)cha138/Article/program/Java/JSP/201311/20465
为了确定一个地点在地球上的位置,人们设置地理坐标系;同理,为了确定天体在天球上的位置,需要设置天球坐标系。地理坐标系和天球坐标系,都是球面坐标系。在天文学上,根据不同的需要,使用不同的天球坐标系。各种
天球有各种不同的坐标系。因此,同一天体就有各种不同的坐标。不同的坐标系之间,既存在区别,又有相互联系。 (l)地平坐标系与第一赤道坐标系 这两种坐标系都属于右旋坐标系,它们的经度(方位与时角)都是
一种“天文坐标“。以赤经和赤纬两个坐标表示天球上任一天体的位置。由春分点的赤经圈(时圈)与通过该天体的赤经圈在北天极所成的角度,或在天赤道上所夹的弧长,称为该天体的赤经计量方向自春分点起沿着与天球周日
一种“天文坐标”。天体在天球上的位置由黄经和黄纬两个坐标表示。春分点的黄经圈与通过某一天体的黄经圈在黄极所成的角度,或在黄道上所夹的弧长,叫做该天体的黄经。计量方向为在黄道上由春分点起,沿着与太阳周年
在应用程序中跟踪MOUSE的坐标 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 第一步建一DLL
知识大全 Java新学法之Robocode基本原理之坐标锁定(下)
Java新学法之Robocode基本原理之坐标锁定(下) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下