[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[数值计算] [已解决]批处理如何快速处理坐标

本帖最后由 mstsc 于 2012-8-24 14:01 编辑
  1. MoveTo 457, 635
  2. Delay 6800
  3. RightDown 1
  4. Delay 186
  5. RightClick 1
  6. MoveTo 216, 696
  7. Delay 777
  8. LeftClick 1
复制代码
从右下角坐标457.635到左上角340.575,图样是5横6纵。
要从457.635到340.575(一共30个空)要一个一个的用鼠标点,最好每次都点在中心处。
我自己算的横坐标依次减24,纵坐标依次减15,基本上能达到每个空都点到。
请帮忙计算出每个空的横纵坐标值。
1

评分人数

    • Batcher: 感谢给帖子标题标注[已解决]字样PB + 2
停下的理由千千万万,向前的理由一个就已足够!

怎么没人回答呢?
是我说的不够详细吗?
停下的理由千千万万,向前的理由一个就已足够!

TOP

  1. echo off&for /l %%x in (457,-24,340) do for /l %%y in (635,-15,575) do echo %%x,%%y
复制代码
1

评分人数

    • mstsc: 乐于助人技术 + 1

TOP

怎么看着像按键精灵的vbs脚本?

TOP

恩  就是按键精灵的
停下的理由千千万万,向前的理由一个就已足够!

TOP

回复 3# bhsx


   请问我怎么样使
  1. MoveTo 457, 635
  2. Delay 6800
  3. RightDown 1
  4. Delay 186
  5. RightClick 1
  6. MoveTo 216, 696
  7. Delay 777
  8. LeftClick 1
复制代码
最后输出的成这样呢?
  1. MoveTo 457, 635
  2. Delay 6800
  3. RightDown 1
  4. Delay 186
  5. RightClick 1
  6. MoveTo 216, 696
  7. Delay 777
  8. LeftClick 1
  9. MoveTo 433, 635
  10. Delay 6800
  11. RightDown 1
  12. Delay 186
  13. RightClick 1
  14. MoveTo 216, 696
  15. Delay 777
  16. LeftClick 1
  17. MoveTo 409, 635
  18. Delay 6800
  19. RightDown 1
  20. Delay 186
  21. RightClick 1
  22. MoveTo 216, 696
  23. Delay 777
  24. LeftClick 1
  25. MoveTo 385, 635
  26. Delay 6800
  27. RightDown 1
  28. Delay 186
  29. RightClick 1
  30. MoveTo 216, 696
  31. Delay 777
  32. LeftClick 1
  33. MoveTo 361, 635
  34. Delay 6800
  35. RightDown 1
  36. Delay 186
  37. RightClick 1
  38. MoveTo 216, 696
  39. Delay 777
  40. LeftClick 1
  41. MoveTo 340, 635
  42. Delay 6800
  43. RightDown 1
  44. Delay 186
  45. RightClick 1
  46. MoveTo 216, 696
  47. Delay 777
  48. LeftClick 1
  49. MoveTo 457, 620
  50. Delay 6800
  51. RightDown 1
  52. Delay 186
  53. RightClick 1
  54. MoveTo 216, 696
  55. Delay 777
  56. LeftClick 1
  57. MoveTo 433, 620
  58. Delay 6800
  59. RightDown 1
  60. Delay 186
  61. RightClick 1
  62. MoveTo 216, 696
  63. Delay 777
  64. LeftClick 1
  65. MoveTo 409, 620
  66. Delay 6800
  67. RightDown 1
  68. Delay 186
  69. RightClick 1
  70. MoveTo 216, 696
  71. Delay 777
  72. LeftClick 1
  73. MoveTo 385, 620
  74. Delay 6800
  75. RightDown 1
  76. Delay 186
  77. RightClick 1
  78. MoveTo 216, 696
  79. Delay 777
  80. LeftClick 1
  81. MoveTo 361, 620
  82. Delay 6800
  83. RightDown 1
  84. Delay 186
  85. RightClick 1
  86. MoveTo 216, 696
  87. Delay 777
  88. LeftClick 1
  89. MoveTo 340, 620
  90. Delay 6800
  91. RightDown 1
  92. Delay 186
  93. RightClick 1
  94. MoveTo 216, 696
  95. Delay 777
  96. LeftClick 1
  97. MoveTo 457, 605
  98. Delay 6800
  99. RightDown 1
  100. Delay 186
  101. RightClick 1
  102. MoveTo 216, 696
  103. Delay 777
  104. LeftClick 1
  105. MoveTo 433, 605
  106. Delay 6800
  107. RightDown 1
  108. Delay 186
  109. RightClick 1
  110. MoveTo 216, 696
  111. Delay 777
  112. LeftClick 1
  113. MoveTo 409, 605
  114. Delay 6800
  115. RightDown 1
  116. Delay 186
  117. RightClick 1
  118. MoveTo 216, 696
  119. Delay 777
  120. LeftClick 1
  121. MoveTo 385, 605
  122. Delay 6800
  123. RightDown 1
  124. Delay 186
  125. RightClick 1
  126. MoveTo 216, 696
  127. Delay 777
  128. LeftClick 1
  129. MoveTo 361, 605
  130. Delay 6800
  131. RightDown 1
  132. Delay 186
  133. RightClick 1
  134. MoveTo 216, 696
  135. Delay 777
  136. LeftClick 1
  137. MoveTo 340, 605
  138. Delay 6800
  139. RightDown 1
  140. Delay 186
  141. RightClick 1
  142. MoveTo 216, 696
  143. Delay 777
  144. LeftClick 1
  145. MoveTo 457, 590
  146. Delay 6800
  147. RightDown 1
  148. Delay 186
  149. RightClick 1
  150. MoveTo 216, 696
  151. Delay 777
  152. LeftClick 1
  153. MoveTo 433, 590
  154. Delay 6800
  155. RightDown 1
  156. Delay 186
  157. RightClick 1
  158. MoveTo 216, 696
  159. Delay 777
  160. LeftClick 1
  161. MoveTo 409, 590
  162. Delay 6800
  163. RightDown 1
  164. Delay 186
  165. RightClick 1
  166. MoveTo 216, 696
  167. Delay 777
  168. LeftClick 1
  169. MoveTo 385, 590
  170. Delay 6800
  171. RightDown 1
  172. Delay 186
  173. RightClick 1
  174. MoveTo 216, 696
  175. Delay 777
  176. LeftClick 1
  177. MoveTo 361, 590
  178. Delay 6800
  179. RightDown 1
  180. Delay 186
  181. RightClick 1
  182. MoveTo 216, 696
  183. Delay 777
  184. LeftClick 1
  185. MoveTo 340, 590
  186. Delay 6800
  187. RightDown 1
  188. Delay 186
  189. RightClick 1
  190. MoveTo 216, 696
  191. Delay 777
  192. LeftClick 1
  193. MoveTo 457, 575
  194. Delay 6800
  195. RightDown 1
  196. Delay 186
  197. RightClick 1
  198. MoveTo 216, 696
  199. Delay 777
  200. LeftClick 1
  201. MoveTo 433, 575
  202. Delay 6800
  203. RightDown 1
  204. Delay 186
  205. RightClick 1
  206. MoveTo 216, 696
  207. Delay 777
  208. LeftClick 1
  209. MoveTo 409, 575
  210. Delay 6800
  211. RightDown 1
  212. Delay 186
  213. RightClick 1
  214. MoveTo 216, 696
  215. Delay 777
  216. LeftClick 1
  217. MoveTo 385, 575
  218. Delay 6800
  219. RightDown 1
  220. Delay 186
  221. RightClick 1
  222. MoveTo 216, 696
  223. Delay 777
  224. LeftClick 1
  225. MoveTo 361, 575
  226. Delay 6800
  227. RightDown 1
  228. Delay 186
  229. RightClick 1
  230. MoveTo 216, 696
  231. Delay 777
  232. LeftClick 1
  233. MoveTo 340, 575
  234. Delay 6800
  235. RightDown 1
  236. Delay 186
  237. RightClick 1
  238. MoveTo 216, 696
  239. Delay 777
  240. LeftClick 1
复制代码
停下的理由千千万万,向前的理由一个就已足够!

TOP

前面的对象怎么定义我就不管啦
  1. x1 = 457
  2. y1 = 635
  3. x2 = 340
  4. y2 = 575
  5. For i=x1 To x2 Step Int((x2-x1)/5)
  6. For j=y1 To y2 Step Int((y2-y1)/6)
  7. Delay 6800
  8. RightDown 1
  9. Delay 186
  10. RightClick 1
  11. Next
  12. Next
复制代码

TOP

回复 7# CrLf


    请问怎么把答案导出呢?
到2.txt
停下的理由千千万万,向前的理由一个就已足够!

TOP

回复 3# bhsx


    请问还能详细点的帮我解决一下问题不?
停下的理由千千万万,向前的理由一个就已足够!

TOP

顶楼代码为1.txt,最后输出2.txt
  1. @echo off
  2. (for /l %%a in (635 -15 575) do (
  3.   for /l %%b in (457 -24 337) do (
  4.     set flag=
  5.     for /f "delims=" %%c in (1.txt) do (
  6.       if not defined flag (
  7.         set flag=1
  8.         if %%b equ 337 (echo MoveTo 340, %%a
  9.         ) else echo MoveTo %%b, %%a
  10.       ) else echo %%c
  11. ))))>2.txt
复制代码
1

评分人数

    • mstsc: 谢谢帮助技术 + 1

TOP

在这里特别感谢3楼和7楼的帮助。谢谢
停下的理由千千万万,向前的理由一个就已足够!

TOP

回复 10# apang


    你好,
@echo off
(for /l %%a in (635 -15 575) do (
  for /l %%b in (457 -24 337) do (
    set flag=
    for /f "delims=" %%c in (1.txt) do (
      if not defined flag (
        set flag=1
        if %%b equ 337 (echo MoveTo 340, %%a
        ) else echo MoveTo %%b, %%a
      ) else echo %%c
))))>2.txt

这个有点问题:
for /l %%a in (635 -15 575) do (                  =》这里的数值给的不对的话,就的不到想要的结果
  for /l %%b in (457 -24 337) do (                =》有什么可以改进的吗?  比如:(212 -21 120)  这个就只能的到4行,可我想的到5行。


还有能帮忙把这段代码每行都给个注释可以不?
停下的理由千千万万,向前的理由一个就已足够!

TOP

回复 7# CrLf


    怎么就石沉大海了呢?
停下的理由千千万万,向前的理由一个就已足够!

TOP

回复 12# mstsc


    不懂什么意思,for /l %%a in (212 -21 120) do echo %%a 可显示212、191、170、149、128共5个数(5行),而不是4行
若要显示6行,将终止数120改小一点,大致是:终止数=起始数+步长*(行数-1)

TOP

回复 14# apang


     我写错了   是  212 -21 130   只能的到4行

  请问 你能把你那段代码标上注释吗?
停下的理由千千万万,向前的理由一个就已足够!

TOP

返回列表