← Back to team overview

sikuli-driver team mailing list archive

[Bug 1201280] Re: [1.0.1] OnAppear()/observe() only works the first time for one image in same region

 

That solved my problem, but created another.

onAppear does not seem to refresh getLastMatch(), and there seems to be
no way to pass the image that triggered onAppear to my handler. So the
hander is triggered, but has no idea where to click in order to process
operations.

Is there a workaround for this?

The documentation talks about explicit operations like find() and
implicit operations like click() setting getLastMatch(), but onAppear()
does not seem to do this.

I can't imagine this is by design, is this a documented bug, or am I
missing a key concept?

Thanks for your help.

-- 
You received this bug notification because you are a member of Sikuli
Drivers, which is subscribed to Sikuli.
https://bugs.launchpad.net/bugs/1201280

Title:
  [1.0.1] OnAppear()/observe() only works the first time for one image
  in same region

Status in Sikuli:
  Fix Committed

Bug description:
  --- fixed with 1.1.0

  see the docs:
  http://sikulix-2014.readthedocs.org/en/latest/region.html#observing-visual-events-in-a-region

  for how to repeat onAppear()/onVanish() in the same observe run
  ---------------------------------------------------------------

  my purpose is to deal w/ 1 button which will appear several times in a game(actually it is the angrybird game) ,then  i used the onappear()/observe() but ir can just deal w/ the 1 time the button shows ,following shows can not be deal ,below is my test code ,
  what i think is that  it can deal each time when button shows until the script end.

  below is my test code  :
   def myHandler(event):
      click("1373853815762.png")
      wait(5)
  Settings.ObserveScanRate=1
  onAppear(("1373853815762.png"),myHandler)
  observe(FOREVER,background = True)
  for i in range(1,5000):
      print "testing....."
      wait(5)

To manage notifications about this bug go to:
https://bugs.launchpad.net/sikuli/+bug/1201280/+subscriptions


References