AHK 快餐店[9] 之 让鼠标移动一像素

AHK 快餐店[9] 之 让鼠标移动一像素 1
上回对读者的留言进行了答复,外加向读者挑战。

vampire 在得到了颜色神偷之后,高兴得不得了。今天他又来找掌柜我鸟。

vampire:如何让鼠标移动一像素?
sfufoet:干嘛用的?
vampire:有时候在 PS 处理图片的时需要嘛。比如选择一个 2 × 2 像素的区域。人工移动鼠标根本做不到。

这个好办。我们可以写一个这样的脚本。本文涉及到的代码来自这里

LEFT::
MouseGetPos, x, y
; 获得鼠标位置,并把获得的 X,Y 坐标分别赋值给 x,y
Mousemove, x-1, y
; 移动鼠标,保持 y 坐标不变,向左移动一个像素。
Return

UP::
MouseGetPos, x, y
Mousemove, x, y-1
Return

RIGHT::
MouseGetPos, x, y
Mousemove, x+1, y
Return

DOWN::
MouseGetPos, x, y
Mousemove, x, y+1
Return

运行脚本后,就可以用上下左右箭头来控制鼠标的移动了。上面的代码好啰嗦哦,对于追求代码之美的程序员来说,下面的代码多完美啊。

Left::  MouseMove, -1,  0,, R
; MouseMove 的完整语法是:
; MouseMove, X, Y [, Speed, R]
; X – X 坐标;Y – Y 坐标;
[ ] 里面的是可选参数,Speed – 移动的速度,其范围是 0 – 100,不填写任何数字的话,参数默认是 0 ,最快速移动;最后的 R 表示前面的参数 X、Y 是相对鼠标当前位置,如果不带这个参数, X、Y 就表示屏幕上的坐标。讲起来很啰嗦,大家比较上面的代码就明白。
Up::    MouseMove,  0, -1,, R
Right:: MouseMove,  1,  0,, R
Down::  MouseMove,  0,  1,, R

update:本系列故事纯属虚构,请勿对号入座。

下回预告:AHK 快餐店[10] 之 键盘也会乾坤大挪移

29 条留言

  1. Paveo 2007/10/30 回复
  2. 柠檬杀手 2007/10/30 回复
  3. helfee 2007/10/30 回复
  4. helfee 2007/10/30 回复
  5. 3m 2007/10/30 回复
  6. Paveo 2007/10/30 回复
  7. sfufoet 2007/10/30 回复
  8. elfox 2007/10/30 回复
  9. sfufoet 2007/10/30 回复
  10. faint 2007/10/30 回复
  11. sfufoet 2007/10/30 回复
  12. tireless 2007/10/31 回复
  13. tireless 2007/10/31 回复
  14. sfufoet 2007/10/31 回复
  15. vampire 2007/10/31 回复
  16. helfee 2007/10/31 回复
  17. tireless 2007/11/01 回复
  18. sfufoet 2007/11/01 回复
  19. Dofy 2007/11/02 回复
  20. Dofy 2007/11/02 回复
  21. Dofy 2007/11/02 回复
  22. sfufoet 2007/11/03 回复
  23. Dofy 2007/11/03 回复
  24. sfufoet 2007/11/03 回复
  25. 橙色八月 2009/03/22 回复

写留言