Автокликер Clickermann :: Форум
		Основной раздел => Общие вопросы => Topic started by: 3mr on February 08, 2016, 02:46:44 PM
		
			
			- 
				Добрый день!
 Помогите пожалуйста с реализацией скрипта или направьте на тему, в которой что-то похожее описано.
 
 Есть файл Excel в котором два столбца, в первом наименование прав, а во втором или "+" или "-". Необходимо чтоб скрипт проставил права, т.е.  активировал/деактивировал CheckBox в браузере (переход между checkbox возможен через кнопку Tab), согласно второму столбцу файла.
- 
				Если я праильно понял, можно скопировать  в два массива оба столбца, затем  прогнать циклом через поиск в браузере строки  левого столбца, затем  смотрим правый в массиве, клик по чекбоксу, и далее  высчитать координаты смещения (+) (-) относительно возвращаемого return
			
- 
				KEYDOWN (#CTRL)//поиск в браузере
 WAITMS (50)
 KEYDOWN (#F)
 WAITMS (50)
 KEYUP (#F)
 KEYUP (#CTRL)
 //ячейки вручную скопируй в два файла текстовые(проверь,чтобы у них конечная длина совпала)
 TFReadArr("C:\1.txt", $arr1 )
 TFReadArr("C:\2.txt", $arr2 )
 
 //вот тебе цикл
 For($a=0, $a<arrsize($arr1))
 сюда вставь поиск,  если найден  оранж цвет, то клик проверка второго массива и клик по ретурну
 end_cyc
- 
				Количество строк в файле и в браузере совпадает, основное это чтобы согласно + или - в файле активировался или деактивировался чек-бокс в браузере. 
			
- 
				//попробуй запустить) 8)
 TFReadArr("C:\1.txt", $arr1 )
 TFReadArr("C:\2.txt", $arr2 )
 
 //вот тебе цикл
 For($a=0, $a<arrsize($arr1))
 KEYDOWN (#CTRL)//поиск в браузере
 WAITMS (50)
 KEYDOWN (#F)
 WAITMS (50)
 KEYUP (#F)
 KEYUP (#CTRL)
 keystring($arr1[$a])
 getscreen
 if_pixel_in(0,0, 1000,800, 3315455)
 lclick($return_x+50, $return_y)//клик по чекбоксу
 if ($arr2[$a]="+")
 lclick($return_x+50, $return_y+5)
 else
 lclick($return_x+50, $return_y+10)
 end_if
 end_if
 end_cyc
- 
				Не получается. Всегда ищет " ю ".
 
 Немного поменял координаты:
 if_pixel_in(455,590, 1560,1043, 3315455)
 lclick($return_x+1082, $return_y)//клик по чекбоксу
 if ($arr2[$a]="+")
 lclick($return_x+1082, $return_y+5)
 else
 lclick($return_x+1082, $return_y+34)
- 
				раскладку смени
 
 или вот так попробуй
 For($a=0, $a<TFCOUNT (1.txt))
 TOCLIP (TFREAD ("1.txt", $a+1))
 KEYDOWN (#CTRL)//поиск в браузере
 WAITMS (50)
 KEYDOWN (#F)
 WAITMS (50)
 KEYUP (#F)
 KEYUP (#CTRL)
 FROMCLIP ()
 getscreen
 ...
 
- 
				Такое ощущение что поиск осуществляется из буфера, а данные из файлов не беруться
			
- 
				Такое ощущение что поиск осуществляется из буфера, а данные из файлов не беруться
 
 разве данные из файла 1 в буфер не уходят? кстати, эти файлы положи рядом с  программой. и замени строчку
 if ($arr2[$a]="+") 
 
на
 if(TFREAD ("2.txt", $a+1)="+")