grinch Posted July 20, 2022 Posted July 20, 2022 (edited) Bit of a tail chaser here. I am new to AIT, so I'm hoping I'm missing something win10, in Notepad then opening the Save As dialog No problem updating the File Name since that's focused & selected on entry, but I also need to ensure the (Save In) at the top is updated. I'm not able to find the proper magic potion that'll focus that control: Quote local $hNotePad = WINWAITActive("report-designer-preview",120) ; "info_"+YYYYMMDD+".CSV" WinActivate($hNotePad) Send ("!f") ; alt-F (file menu) in Notepad Send ("A") ; hotkey to start Save As dialog $CSVSaveFolder="C:\Temp" ; My latest efforts are the following two a) Local $retCC = ControlClick ($hNotePad, "", "[CLASS:ToolbarWindow32; INSTANCE:2]" ) ; why does the instance number seem to also be a moving target? It was 1 now its 4 b) Local $retCC = ControlClick ($hNotePad, "", 41477 ) ; or 1001?? I'd been messing with mouse coords earlier because I'd deluded myself in believing they were accurate -- until the default posn of the dialog moved. Now, frustration increasing, I thought, well a max'd dialog fixes coordinates, so, max the dialog. I can _manually_ do that (2-click the title bar), but I can't find anything in the AI3 help that allows an active window/dialog to be max'd, or a way to 2-click the title bar (of a window whose absolute coords one can not be sure of). Note: the Save As diag has no max-glyph in the upper right corner and the upper right corner isn't a control, but maybe could be manipulated after a move and send(enter). I have a flat spot in my forehead from decades of "D'oh!"s , yet I still love doing it. Not getting there, but the final accomplishment. Any ideas? Whether its max'ing or some clicking, thanks. Edited July 20, 2022 by grinch hipaa
OJBakker Posted July 21, 2022 Posted July 21, 2022 WinSetState($hNotePad, "", @SW_MAXIMIZE) You can use function WinSetState() to maximize your notepad window.
boom221 Posted July 24, 2022 Posted July 24, 2022 Here's how I would do it in Windows 11. It should be fairly similar in Windows 10. Local $notepadWindowTitle = "report-designer-preview" Local $saveAsWindowName = "Save As" Local $saveFolder = "C:\Windows\Temp" Local $hNotePad = WinWaitActive("[CLASS:Notepad;TITLE:" & $notepadWindowTitle & ";]", "", 10) ControlSend($hNotepad, "", $hNotepad, "^+s") ; Send "Save As" command Local $saveAsWindow = WinWaitActive("[CLASS:#32770;TITLE:" & $saveAsWindowName & ";]", "", 2) ; Find "Save As" window ControlSend($saveAsWindow, "", $saveAsWindow, "{F4}") ; Give keyboard focus to address bar ControlSetText($saveAsWindow, "", "[CLASS:Edit;INSTANCE:2;]", $saveFolder) ; Write new address $saveFolder ControlSend($saveAsWindow, "", "[CLASS:Edit;INSTANCE:2;]", "{ENTER}") ; Validate changes and exit address bar
grinch Posted July 27, 2022 Author Posted July 27, 2022 Thank you OJBakker and boom221. great direction. Had to work around a tiny bit, but it could be me.
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