本文共 873 字,大约阅读时间需要 2 分钟。
# Win32API应该可以被多种开发语言所调用, 主要用来操作MS的。
class Cursor M0USEEVENTF_LEFTDOWN = 2 # 鼠标左键按下键值MOUSEEVENTF_LEFTUP = 4 # 鼠标左键松开键值
MOUSEEVENTF_RIGHTDOWN = 0x0008 #右键MOUSEEVENTF_RIGHTUP = 0x0010
# 初始化 def initialize # 调用user32.dll的GetCursorPos(得到鼠标坐标)函数 @getCursorPos = Win32API.new("user32","GetCursorPos",['P'],'V') # 调用user32.dll的GetCursorPos(得到鼠标坐标)函数 @setCursorPos = Win32API.new("user32","SetCursorPos",['i']*2,'V') # 调用user32.dll的mouse_event(鼠标事件,如点击)函数 @mouse_event = Win32API.new("user32","mouse_event",['L']*5,'V') end # 获得鼠标坐标 def pos lpPoint ="\0"*8 @getCursorPos.Call(lpPoint) x,y = lpPoint.unpack("LL") return [x,y] end # 设定鼠标坐标 def pos=(xy) @setCursorPos.Call(xy[0],xy[1]) end # 按下鼠标左键 def leftdown @mouse_event.Call(M0USEEVENTF_LEFTDOWN,0,0,0,0) end # 松开鼠标左键 def leftup @mouse_event.Call(MOUSEEVENTF_LEFTUP,0,0,0,0) end # 点击鼠标左键(按下提起) def click leftdown leftup end
end
转载地址:http://vgcci.baihongyu.com/