Jump to content


Photo

Help With Screen Without Visible Text. Screenshots inside.


  • Please log in to reply
10 replies to this topic

#1 camarguera

camarguera
  • Members
  • 5 posts

Posted 09 September 2012 - 11:41 PM

Hi!

I'm new to AutoHotKeys. What an amazing program!

I started this script, it opens the software and starts analyzing the BPM of each song. It says "Scanning" and also the percentage of the progress. I want to wait until it scan all songs and then continue with the script.

I Imagine this would be possible with "Visible Window Text" but the Window Spy doesn't detect the "Scanning" text.

There is a sample Screen shot. The text showing on the black part of the window cannot be highlight i think that's why:


Posted Image



Anyway is there anyother way i can do this wait until scanned thing??? Thanks!!! :mrgreen:

#2 GodlyCheese

GodlyCheese
  • Members
  • 593 posts

Posted 10 September 2012 - 12:24 AM

ImageSearch

If you can't highlight the words then it probably isn't in plaintext, it's probably some sort of image or there's some annoying programming in there to prevent you from messing with it. Take a picture of "Scanning..." using some screenshot program, then save it somewhere, and use it with ImageSearch to find any instances of your "Scanning" photo.

If that doesn't work then you could try VariemClick, but that would require a bit of editing.

#3 camarguera

camarguera
  • Members
  • 5 posts

Posted 10 September 2012 - 01:07 AM

Ok, look another screenshot...

I entered the chat, a guy name Tidbit said i could use "ControlGet" command to get it.



ControlGet, OutputVar, List, , AfxWnd80su2, MixMeister Fusion
msgbox %outputvar%


But it shows a blank Ok box....

I know there is a way to do it...


Posted Image



Actually the text cannot be highlighted, but i can highlight the columns...


Posted Image

#4 camarguera

camarguera
  • Members
  • 5 posts

Posted 10 September 2012 - 01:43 AM

ImageSearch

If you can't highlight the words then it probably isn't in plaintext, it's probably some sort of image or there's some annoying programming in there to prevent you from messing with it. Take a picture of "Scanning..." using some screenshot program, then save it somewhere, and use it with ImageSearch to find any instances of your "Scanning" photo.

If that doesn't work then you could try VariemClick, but that would require a bit of editing.


GodlyCheese Thanks for your reply.

I think i can't use that method because the BPM result is always a different one and when it is scanning a song it shows up the (%) progress of that song and it starts scanning another one.

#5 tidbit

tidbit
  • Moderators
  • 2287 posts

Posted 10 September 2012 - 03:09 AM

I also said "might be able to use ...." keyword: 'might'.
Also, you are not using the full title. you need the full title, including the " - Untitled" part.
You could use SetTitleMatchMode, 2 at the very top to not require the full title.

Edit:
also, AfxWnd80su2 is not a standard Windows control (SysListview321 is the standard windows listview control). so there is a decent chance you cannot use ControlGet.

#6 camarguera

camarguera
  • Members
  • 5 posts

Posted 10 September 2012 - 03:19 AM

Hi,
i have this Edit Tag window, it has a "ClassNN: Button4" Text: Auto Detect

and a "Class NN: Edit1" = this is the blank field where the result will come at

I need a script to be pressing that "ClassNN button" until the Edit1 field is filled with the result, is that possible???


After it is scanned it get a result like that: a 2 or 3 digit number that ends with .00 or .0

>>>>( TitleMatchMode=slow Visible Text )<<<<
Lonely Hearts
Afgin
Emotional Peaks
Psytrance
2011
3
135.00
A
minor
8A



Posted Image


Posted Image

Is it possible?

#7 GodlyCheese

GodlyCheese
  • Members
  • 593 posts

Posted 10 September 2012 - 03:20 AM

You can limit the search area of ImageSearch. If you limit the search area to that column and exlude where the % bits are then shouldn't that work? Or something like that. I'm not sure you can do much else (if ControlGet doesn't work) without using AHK to dig around in BPM's code.

In any case good luck.

#8 Sjc1000

Sjc1000
  • Members
  • 463 posts

Posted 10 September 2012 - 03:26 AM

Give this a try, its not tested (because i dont have that program & window) but it should work.


Loop
{
	ControlClick, Button4, ahk_class #32770
	ControlGetText, Text, Edit1,  ahk_class #32770
	If Text = 
	{
		Sleep 1000
		continue
	}
	break
}


#9 camarguera

camarguera
  • Members
  • 5 posts

Posted 10 September 2012 - 03:45 AM

Give this a try, its not tested (because i dont have that program & window) but it should work.


Loop
{
	ControlClick, Button4, ahk_class #32770
	ControlGetText, Text, Edit1,  ahk_class #32770
	If Text = 
	{
		Sleep 1000
		continue
	}
	break
}










SJC1000

Thanks so much!!

The script worked perfectly, now i know a litle more, maybe ill get one day that i can post a sollution to someone too
:D

thanks thanks :D

#10 Guests

  • Guests

Posted 10 September 2012 - 08:10 PM

1.Posted Image

2.Posted Image


Hi guys please, i need an last hhelp with this lol.

I just found out the last code will not work because the Class NN Text will be always Blank so at this part it will always being executed again:

If Text =
   {
      Sleep 1000
      continue
   }


However i just found out that the blank box wont show as a CLASS NN but will show as a Visible Text.

So, i need the script to stop when it founds the BPM, which will be a number of 2 or 3 digits ending with .0:

Please check the screen shot number 2. It found the BPM, it was 138.0 Now that if found it i want the script to stop, how i do that?? Is that even possible??

#11 Sjc1000

Sjc1000
  • Members
  • 463 posts

Posted 11 September 2012 - 02:10 AM

Ill give this another go, i just need you to do one thing for me.. After the edit has text use this

WinGetText, WinText, ahk_class #32770
MsgBox, %WinText%

Tell me what it says, ill be able to help alot more if you do this.