Sign in to follow this  
Followers 0
Pol

function MouseClick does not work :(

11 posts in this topic

#1 ·  Posted (edited)

I am just starting to program with Autoit so probably my question will be a bit silly. But I have spent more than 12 hrs trying to make my script working but failed. Seems that MouseClick does not work. It would be very kind if someone could help me. :)

Here is the script:

Opt("MouseCoordMode", 2)

Opt("PixelCoordMode", 2)

$X = 484

$Y = 46

$hCol = 16447222

$sWin = "XXX"

WinActivate($sWin)

While WinActive($sWin)

If PixelGetColor($X, $Y) == 16447222 Then MouseClick("primary", $X, $Y, 1)

WEnd

Sometimes it works as it is but much more often does not. More often the mouse positions itself in the $X, $Y and than waits until I move it. If I do - there is the click.

Edited by Pol

Share this post


Link to post
Share on other sites



If this is for a Game, I would suggest you read this >> http://www.autoitscript.com/forum/forum-2/announcement-12-game-bots-and-automation/


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

#3 ·  Posted (edited)

it was helpfull :)))

Edited by Pol

Share this post


Link to post
Share on other sites

If PixelGetColor($X, $Y) == 16447222

Should be

If PixelGetColor($X, $Y) = 16447222

Share this post


Link to post
Share on other sites

Thank you. I tried one = but it does not help. :)

Share this post


Link to post
Share on other sites

Nope I do not code I run it in SciTE. I just press F5. :)

Share this post


Link to post
Share on other sites

#9 ·  Posted (edited)

It just shell press left button of the mouse if the color of the pixel matches. So when it matches nothing happens. If i input

If PixelGetColor($X, $Y) == 16447222 Then MsgBox(64, «clicks:», MouseClick("left", $X, $Y, 1))

instead of just MouseClick("primary", $X, $Y, 1) it I get nothing until I move the mouse manualy. Than it clicks....

MouseClick("Secondary") does not work as well :)

Edited by Pol

Share this post


Link to post
Share on other sites

It just shell press left button of the mouse if the color of the pixel matches. So when it matches nothing happens. If i input

If PixelGetColor($X, $Y) == 16447222 Then MsgBox(64, «clicks:», MouseClick(«left», $X, $Y, 1))

instead of just MouseClick("primary", $X, $Y, 1) it I get nothing until I move the mouse manualy. Than it clicks....

MouseClick("Secondary") does not work as well :)

Then you have a serious problem with your windows operationg system, or your firewall blocking autoit from doing its job.

That is your problem, not mouseclick.


AutoIt Absolute Beginners    Require a serial    Pause Script    Video Tutorials by Morthawt   ipify 

Monkey's are, like, natures humans.

Share this post


Link to post
Share on other sites

#11 ·  Posted (edited)

But everything works perfectly when I do it manually... And I do not see any problems with the rest soft on my PC.

Edited by Pol

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0