Sign in to follow this  
Followers 0
noobieautolearn

Simple pixelgetcolor issue

8 posts in this topic

#1 ·  Posted (edited)

This is what I have, it won't work

 
Dim $count = 0
Do
If PixelGetColor (800, 510) = 0xFF0000 Then 
MouseClick("left", 800, 510, 1)
endif
sleep(10000)
$count += 1
Until $count = 9
 
 
Am I missing something?  I want it to click on that mouse coordinate if that coordinate is 0xFF0000 or do nothing if it's not.  It runs and does not error out but even when that coordinate is that color it will not click.  I verified with Autoit v3 window info the color was correct.
Edited by noobieautolearn

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Hi,

try doing this:

MsgBox(0, "", PixelGetColor(800,510))

PixelGetColor returns a decimal value, the one youre using for compare seems to be hex.

You need to use the one the line above returns.

Edited by Radiance

Share this post


Link to post
Share on other sites

Radiance,

AutoIt is happy with either Hex or Decimal as numeric values:

ConsoleWrite((0x0010 = 16) & @CRLF)
You get True from that compare. ;)

M23


Any of my own code posted anywhere on the forum is available for use by others without any restriction of any kind._______My UDFs:

Spoiler

ArrayMultiColSort ---- Sort arrays on multiple columns
ChooseFileFolder ---- Single and multiple selections from specified path treeview listing
Date_Time_Convert -- Easily convert date/time formats, including the language used
ExtMsgBox --------- A highly customisable replacement for MsgBox
GUIExtender -------- Extend and retract multiple sections within a GUI
GUIFrame ---------- Subdivide GUIs into many adjustable frames
GUIListViewEx ------- Insert, delete, move, drag, sort, edit and colour ListView items
GUITreeViewEx ------ Check/clear parent and child checkboxes in a TreeView
Marquee ----------- Scrolling tickertape GUIs
NoFocusLines ------- Remove the dotted focus lines from buttons, sliders, radios and checkboxes
Notify ------------- Small notifications on the edge of the display
Scrollbars ----------Automatically sized scrollbars with a single command
StringSize ---------- Automatically size controls to fit text
Toast -------------- Small GUIs which pop out of the notification area

 

Share this post


Link to post
Share on other sites

AutoIt is happy with either Hex or Decimal as numeric values:

 

Crazy, I've always had problems with it. But you're right.

Anyway, the message box should probably bring some helpful insight.

Share this post


Link to post
Share on other sites

#5 ·  Posted (edited)

I think I figured it out but not 100 percent sure.  I think I was using the wrong color.

Edited by noobieautolearn

Share this post


Link to post
Share on other sites

#6 ·  Posted (edited)

It would be MUCH better to try to hook directly into the control in question. Using Pixel searching is the worst way to deal with controls. What happens when you use the AutoIt info tool that is part of the AutoIt Suite? What does it report back?

Edited by DarthCookieMonster

Share this post


Link to post
Share on other sites

I had struggles with pixelsearch and came up with this kind of a code, which works perfect!

Instead of checking if the X & Y coordinates have the colour ur looking for, this code scans an area and if the colour ur looking for is found (or not) then it will do a certain action.

Goodluck!

$pixel = PixelSearch(846, 433, 1011, 510, 0xF0F4F9, 10 )
If not @error Then

    Call( "func_12)
EndIf

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