Shibuya Posted December 7, 2006 Share Posted December 7, 2006 I'm trying to write a small function, one that scrolls thru a SysTabControl32 until the desired tab is active. The script below is my attempt on it. Tested it on IE7 with the Printing Preferences window of MS Document Image Writer, somehow the script exited the while loop without reaching the correct tab. $title = "Printing Preferences" $tab = "About" Opt("WinTitleMatchMode", 3) $print_handle = WinGetHandle($title) MsgBox(0, "", $print_handle) While WinExists($print_handle) ;MsgBox(0, "Details", "test1") If WinActive($print_handle, $tab) Then ExitLoop ;exit loop when the required tab is active ;MsgBox(0, "Details", "test2") If WinWaitActive($print_handle) Then Send("^{TAB}") ;scrolls thru each tab ;MsgBox(0, "Details", "test3") Sleep(1500) WEnd MsgBox(0, "Details", "test4") Any idea what's wrong with the script? The speed of sound is defined by the distance from door to computer divided by the time interval needed to close the media player and pull up your pants when your mom shouts "OH MY GOD WHAT ARE YOU DOING!!!" Link to comment Share on other sites More sharing options...
GaryFrost Posted December 7, 2006 Share Posted December 7, 2006 (edited) $title = "Printing Preferences" $tab = "About" Opt("WinTitleMatchMode", 2) $print_handle = WinGetHandle($title) MsgBox(0, "", $print_handle) While WinExists($print_handle) WinActivate($print_handle) If ControlCommand($title,"","SysTabControl321","CurrentTab", "") = 3 Then ExitLoop ControlCommand($title,"","SysTabControl321","TabRight", "") Sleep(1500) WEnd MsgBox(0, "Details", "test4") Edited December 7, 2006 by gafrost SciTE for AutoItDirections for Submitting Standard UDFs Don't argue with an idiot; people watching may not be able to tell the difference. Link to comment Share on other sites More sharing options...
Shibuya Posted December 8, 2006 Author Share Posted December 8, 2006 $title = "Printing Preferences" $tab = "About" Opt("WinTitleMatchMode", 2) $print_handle = WinGetHandle($title) MsgBox(0, "", $print_handle) While WinExists($print_handle) WinActivate($print_handle) If ControlCommand($title,"","SysTabControl321","CurrentTab", "") = 3 Then ExitLoop ControlCommand($title,"","SysTabControl321","TabRight", "") Sleep(1500) WEnd MsgBox(0, "Details", "test4") hmmm....is there no way I to reference the tab using the text on the tab, other than using the reference number returned by ControlCommand($title,"","SysTabControl321","CurrentTab", "")? The speed of sound is defined by the distance from door to computer divided by the time interval needed to close the media player and pull up your pants when your mom shouts "OH MY GOD WHAT ARE YOU DOING!!!" Link to comment Share on other sites More sharing options...
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now