赞 | 451 |
VIP | 56 |
好人卡 | 75 |
积分 | 425 |
经验 | 124650 |
最后登录 | 2024-11-30 |
在线时间 | 7606 小时 |
Lv5.捕梦者 (管理员) 老黄鸡
- 梦石
- 0
- 星屑
- 42464
- 在线时间
- 7606 小时
- 注册时间
- 2009-7-6
- 帖子
- 13506
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
撒花撒花,第一次成功地玩了API!!
喵,今天下载了VB控制鼠标的范例,然后反复琢磨和尝试AND咨询终于成功地移植到RGSS上咯~~
范例
Project1.rar
(187.19 KB, 下载次数: 650)
脚本- # 定位鼠标 by Fux2
- # 喵的第一次玩API居然都成功!撒花!
- class Cursor
- M0USEEVENTF_LEFTDOWN = 2 # 鼠标左键按下键值
- MOUSEEVENTF_LEFTUP = 4 # 鼠标左键松开键值
-
- # 初始化
- 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
复制代码 |
|