Herb191 Posted November 10, 2009 Share Posted November 10, 2009 I have a graphing program I would like to automate in a reliable way and I am trying to come up with the best way of going about it. I was hoping to use COM functions but they are not supported by the program and there are few controls in the main program so I don’t think I will be able to use much of the control commands. So, I think I’m stuck using the mouse/send functions? The program displays the depth that the mouse cursor is at and i would like to use this in my script. Something like: If $Depth = $X Then $Do_Something The problem is I can’t get the depth info from the window. It doesn’t display the text in the controller. I’m including the window information and screen shot so you can see what I am talking about. Any ideas would be appreciated. The Window info: >>>> Window <<<< Title: MUD.LOG 6.2a - [not saved] Class: TDiagramForm Position: 127, -7 Size: 671, 738 Style: 0x16CF0000 ExStyle: 0x00010100 Handle: 0x006E0682 >>>> Control <<<< Class: TStatusBar Instance: 1 ClassnameNN: TStatusBar1 Advanced (Class): [CLASS:TStatusBar; INSTANCE:1] ID: 2754410 Text: Position: 0, 661 Size: 663, 23 ControlClick Coords: 207, 23 Style: 0x54000100 ExStyle: 0x00000000 Handle: 0x002A076A >>>> Mouse <<<< Position: 338, 727 Cursor ID: 0 Color: 0x7586DC >>>> StatusBar <<<< >>>> Visible Text <<<< >>>> Hidden Text <<<<Screen shot.bmp Link to comment Share on other sites More sharing options...
Herb191 Posted November 11, 2009 Author Share Posted November 11, 2009 Anyone? All suggestions welcome. Link to comment Share on other sites More sharing options...
PsaltyDS Posted November 11, 2009 Share Posted November 11, 2009 Try this to see if you can read the status bar parts: #Include <GuiStatusBar.au3> $hWin = WinGetHandle("[CLASS:TDiagramForm; TITLE:MUD.LOG 6.2a", "") ConsoleWrite("$hWin = " & $hWin & @LF) $hStatus = ControlGetHandle($hWin, "", "[CLASS:TStatusBar; INSTANCE:1]") ConsoleWrite("$hStatus = " & $hStatus & @LF) $iParts = _GUICtrlStatusBar_GetCount($hStatus) ConsoleWrite("$iParts = " & $iParts & @LF) For $n = 0 To $iParts - 1 $sText = _GUICtrlStatusBar_GetText($hStatus, $n) ConsoleWrite("Part " & $n & ": " & $sText & @LF) Next Valuater's AutoIt 1-2-3, Class... Is now in Session!For those who want somebody to write the script for them: RentACoder"Any technology distinguishable from magic is insufficiently advanced." -- Geek's corollary to Clarke's law Link to comment Share on other sites More sharing options...
Herb191 Posted November 11, 2009 Author Share Posted November 11, 2009 Try this to see if you can read the status bar parts: #Include <GuiStatusBar.au3> $hWin = WinGetHandle("[CLASS:TDiagramForm; TITLE:MUD.LOG 6.2a", "") ConsoleWrite("$hWin = " & $hWin & @LF) $hStatus = ControlGetHandle($hWin, "", "[CLASS:TStatusBar; INSTANCE:1]") ConsoleWrite("$hStatus = " & $hStatus & @LF) $iParts = _GUICtrlStatusBar_GetCount($hStatus) ConsoleWrite("$iParts = " & $iParts & @LF) For $n = 0 To $iParts - 1 $sText = _GUICtrlStatusBar_GetText($hStatus, $n) ConsoleWrite("Part " & $n & ": " & $sText & @LF) Next That worked great thank you. 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