эмуляция нажатия клавиш

Ответить
Аватара пользователя
skaaater

эмуляция нажатия клавиш

Сообщение skaaater »

Добрый день. Такая проблема, хочу написать программу, чтобы при попадании в центр экрана определенного цвета, автоматический нажимались клавиши :


Цитата:



1.Правая кнопка мыши

Задержка 20 мсек

2.Левая кнопка мыши

Задержка 20 мсек

3.Цифра "3" (верхняя цифр. клавиатура)

Задержка 20 мсек

4.Цифра "1" (верхняя цифр. клавиатура)



Уже запутался в этих клавишах, не подскажете как написать (доработать) код?



Вот сам код (Красным помечено куда нужно вставить)





Код:

Код: Выделить всё

#Region   #AutoIt3Wrapper_Version=Beta
 #AutoIt3Wrapper_Icon=icon.ico  
#AutoIt3Wrapper_Outfile=zzz.exe  
#AutoIt3Wrapper_Compression=4  
#AutoIt3Wrapper_Compile_Both=y  
#AutoIt3Wrapper_UseX64=y  
#AutoIt3Wrapper_Res_Comment=papkamod  
#AutoIt3Wrapper_Res_Description=papkamod  
#AutoIt3Wrapper_Res_Fileversion=1.0.0.0  
#AutoIt3Wrapper_Res_Language=1049  
#AutoIt3Wrapper_Res_requestedExecutionLevel=highestAvailable  
#EndRegion   
#Include   
#Include   
If WinExists(@ScriptName) Then Exit  
AutoItWinSetTitle(@ScriptName)    
Opt("MouseCoordMode", 0)  
Opt("TrayIconHide", 1)  
Opt("PixelCoordMode", 2)  
Opt("MouseClickDelay", 1)   
Opt("MouseClickDownDelay", 100)     
Global $Cscript = 1   
Global $PAUSARASBROSA = 10   
Global Const $VK_OEM_PLUS = 0xBB   
Global Const $VK_OEM_MINUS = 0xBD     
MsgBox(48, "Hello",10)    
_HotKeyAssign($VK_HOME, 'TogglePause')   
_HotKeyAssign($VK_END, 'Terminate')     
_HotKeyAssign($VK_OEM_PLUS, 'Zna4eniePLUS')   
_HotKeyAssign($VK_OEM_MINUS, 'Zna4enieMINUS')      
While 1    
While $Cscript = 1    
; координаты поиска и цвета  
$left='492'  
$top='429'  
$right='533'  
$bottom='434'  
$color='15878679';Цвет пиксела      
$pos = PixelSearch ( $left, $top, $right, $bottom, $color)   
If Not @error Then ; если цвет найден выполняем условие      
; Вот здесь нужно чтобы выполнилось нажатие клавиш  	  	  
EndIf  
If $Cscript  1 Then   
ToolTip("ПАУЗА", 0, 0)  
Beep(500,100)   
ToolTip("")   
EndIf  
WEnd    
While $Cscript = 0    
sleep(1000)  
If $Cscript  0 Then   
ToolTip("ЗАПУСК", 0, 0)  
Beep(500,100)  
ToolTip("")  
EndIf  
WEnd  
WEnd      
Func Zna4eniePLUS()   
$PAUSARASBROSA = $PAUSARASBROSA + "5"  
ToolTip("Задержка - "&$PAUSARASBROSA, 0, 0)   
sleep(300)   
ToolTip("")     
EndFunc    Func Zna4enieMINUS()   
$PAUSARASBROSA = $PAUSARASBROSA - "5"  
ToolTip(" + "&$PAUSARASBROSA, 0, 0)   
sleep(300)   
ToolTip("")   
EndFunc        
Func TogglePause()  
$Cscript = NOT $Cscript  
EndFunc     
Func Terminate()  
ToolTip("Autoshot -  ВЫКЛЮЧЕНИЕ", 0, 0)   
Beep(500,500)       
Exit 0  
EndFunc
Ответить

Вернуться в «AutoIt»