- Сообщения
- 7,790
- Репутация
- 2,323
valdur2000 [?]
Я думал, что у Вас таблица, тогда можно было бы так:
Может, как-то так?
Это исправил.описал три координаты, а он кликает только на первые две
Я думал, что у Вас таблица, тогда можно было бы так:
Код:
$iCoord_X = 50 ;начальная координата X
$iCoord_Y = 60 ;начальная координата Y
$iStep_X = 55 ;шаг по оси X
$iStep_Y = 25;шаг по оси Y
$iX = $iCoord_X - $iStep_X
$iY = $iCoord_Y - $iStep_Y
Dim $a_ReturnArray[44][11] = [[43, 10]]
For $i = 1 To $a_ReturnArray[0][0]
For $j = 1 To $a_ReturnArray[0][1]
$a_ReturnArray[$i][$j] = $i * $j
Next
Next
; например, на странице 20 строк и 10 колонок
For $i = 1 To $a_ReturnArray[0][0]
$iY += $iStep_Y
$iX = $iCoord_X - $iStep_X
For $j = 1 To $a_ReturnArray[0][1]
$iX += $iStep_X
ConsoleWrite('Table ' & $i & 'x' & $j & ' --- ' & $iX & 'x' & $iY & ' -- ' & $a_ReturnArray[$i][$j] & @CR)
MouseMove($iX, $iY, 5)
;MouseClick("left", $iX, $iY, 1, 0)
;Sleep(500)
;Send($a_ReturnArray[$i][$j])
;Sleep(1000)
Next
If Not Mod($i, 20) Then ;каждая 20-ая строка
$iY = $iCoord_Y - $iStep_Y
;здесь, например, нажимаете на кнопку перехода на следующую страницу
ConsoleWrite('Страница готова' & @CR)
EndIf
Next
Может, как-то так?
Код:
Dim $aCoord[4][2] = [[3],[222, 333],[111, 212],[444, 222]]; и т.д.
$q = 0
For $i = 1 To $a_ReturnArray[0][0]
For $j = 1 To $a_ReturnArray[0][1]
If $q = $aCoord[0][0] Then $q = 0
$q += 1
If $j = 5 Then ;пример
MsgBox(64, 'Info', 'Pause')
;делаете здесь что Вам надо
EndIf
MouseClick("left", $aCoord[$q][0], $aCoord[$q][1], 1, 0)
Sleep(200)
For $w = 1 To 10
Send($a_ReturnArray[$i][$j])
Sleep(500)
$aTemp = PixelSearch(;Здесь Ваши данные)
If Not @error Then ExitLoop
Next
If @error Then
MsgBox(16, 'Error', 'Error')
Exit
EndIf
Next
MsgBox(64, 'Info', 'Pause')
;делаете здесь что Вам надо
Next