myspacee Posted February 14, 2010 Posted February 14, 2010 Hello to all, for a pdf reader project i need to 'map' to a button adobe reader shortcut for zoom in and out. In accord with Adobe help site: Zoom in -> Ctrl+equal sign Zoom out -> Ctrl+hyphen Can't replicate this with a button, try : Send("{CTRLDOWN}") Send("{NUMPAD1}") Send("{CTRLup}") Without luck, anyone can help please ? m.
furrycow Posted February 14, 2010 Posted February 14, 2010 Just had a quick play around with Send() and Adobe Reader... Sleep(2000) Send("^{NUMPAD0}");Fit whole page Sleep(1000) Send("^{NUMPAD1}");Actual size Sleep(1000) Send("^{NUMPAD2}");Fit width of page Sleep(1000) Send("^{NUMPAD3}");Fit visible Sleep(1000) Send("^{NUMPAD4}");Reflow (whatever that means!) Sleep(1000) Send("^{+}");Rotate clockwise 90degrees Sleep(1000) Send("^{+}");Rotate clockwise 90degrees Sleep(1000) Send("^{+}");Rotate clockwise 90degrees Sleep(1000) Send("^{+}");Rotate clockwise 90degrees Sleep(1000) Send("^+{-}");Rotate anti-clockwise 90degrees Sleep(1000) Send("^+{-}");Rotate anti-clockwise 90degrees Sleep(1000) Send("^+{-}");Rotate anti-clockwise 90degrees Sleep(1000) Send("^+{-}");Rotate anti-clockwise 90degrees Sleep(1000) Send("^{-}");Zoom out Sleep(1000) Send("^{-}");Zoom out further Sleep(1000) Send("^{=}");Zoom in Sleep(1000) Send("^{=}");Zoom in further Instant Lockerz Invite - www.instantlockerzinvite.co.uk
somdcomputerguy Posted February 14, 2010 Posted February 14, 2010 Try it this way Send("^{NUMPAD1}") - Bruce /*somdcomputerguy */ If you change the way you look at things, the things you look at change.
ReFran Posted February 14, 2010 Posted February 14, 2010 Embedded in IE you can use: $Obj.Navigate('C:\Test.pdf#zoom=120') From commandline/script you can use: AcroRd32.exe /a "zoom=125" "c:\Test.pdf" HTH, Reinhard
myspacee Posted February 15, 2010 Author Posted February 15, 2010 (edited) tahnk you all for reply, but can't apply send function to my little project. I list all pdf documents in folder, and show to user selected one in an IE obj: expandcollapse popup#include <GUIConstants.au3> #include <Misc.au3> #include <GuiButton.au3> #include <WindowsConstants.au3> #include <String.au3> #include <GuiListView.au3> #include <array.au3> #Include <Constants.au3> #Include <GuiButton.au3> #include <GUIComboBox.au3> #include <GuiConstantsEx.au3> #Include <File.au3> #include <WinAPI.au3> #include <GDIPlus.au3> #include <String.au3> ;////////////////////////////////// ;// set variabili ;////////////////////////////////// dim $my_selection = "", $my_old_selection = $my_selection, $sText= "", $my_selection_index ;////////////////////////////////// ;// GUI ;////////////////////////////////// $hGUI = GUICreate("SDII", 952, 700, 0, 0) $Group1 = GUICtrlCreateGroup("Viewer", 264, 8, 681, 689) GUICtrlCreateGroup("", -99, -99, 1, 1) $zoom_in = GUICtrlCreateButton("+", 8, 552, 249, 65, 0) GUICtrlSetFont(-1, 32, 400, 0, "MS Sans Serif") $zoom_out = GUICtrlCreateButton("-", 8, 622, 249, 65, 0) GUICtrlSetFont(-1, 32, 400, 0, "MS Sans Serif") $Combo1 = GUICtrlCreateCombo("Combo1", 8, 401, 249, 21) $Label1 = GUICtrlCreateLabel("Destinazione", 9, 364, 143, 33) GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif") $INVIATI = GUICtrlCreateButton("Vedi già inviati", 8, 285, 249, 65, 0) GUICtrlSetFont(-1, 16, 400, 0, "MS Sans Serif") $Obj = ObjCreate("Shell.Explorer.1") $browser = GUICtrlCreateObj($Obj, 275, 25, 665, 665) GUICtrlSetResizing ( -1, $GUI_DOCKRIGHT ) $hCombo = GUICtrlCreateCombo("", 8, 20, 249, 273, BitOR($CBS_SIMPLE,$CBS_AUTOHSCROLL,$CBS_DISABLENOSCROLL,$WS_VSCROLL)) GUISetState(@SW_SHOW) ;////////////////////////////////// ;// combo stuff ;////////////////////////////////// ;popolate combo _GUICtrlComboBox_BeginUpdate($hCombo) _GUICtrlComboBox_AddDir($hCombo, @ScriptDir & "\*.pdf") _GUICtrlComboBox_EndUpdate($hCombo) ;select first element _GUICtrlComboBox_SetCurSel($hCombo, $my_selection_index) $my_selection = _GUICtrlComboBox_GetCurSel($hCombo) _GUICtrlComboBox_GetLBText($hCombo, $my_selection, $sText) $Obj.Navigate(@ScriptDir & '\' & $sText) ;////////////////////////////////// ;// MAIN ;////////////////////////////////// While 1 $Msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE $question = MsgBox(4, "SDII", "Really quit ?") if $question = 6 then Exit ;if yes -> close program Case $msg = $zoom_in Send("^{=}");Zoom in Case $msg = $zoom_out Send("^{-}");Zoom out EndSelect ;obtain actual selection $my_selection = _GUICtrlComboBox_GetCurSel($hCombo) _GUICtrlComboBox_GetLBText($hCombo, $my_selection, $sText) ;if last selction is <> than old, user select another entry if $my_old_selection <> $my_selection Then $Obj.Navigate(@ScriptDir & '\' & $sText) GUISetState(@SW_SHOW) ;reset old & new position and wait for next selection $my_old_selection = $my_selection EndIf sleep(10) WEnd I want to send adobe keyboard shortcut to $Obj = ObjCreate("Shell.Explorer.1") becuse send work but only if user manually move focus on this object. Any idea to send keyboard to an obj ? m. Edited February 15, 2010 by myspacee
furrycow Posted February 15, 2010 Posted February 15, 2010 Hey, i tried getting your code to run, and it did, but i didnt know what to do once i had got a .pdf, either way, if you want to send it to a specific window then use; ControlSend() I can't really test it for you because, its not working properly for me, but in the helpfile search for "ControlSend" and also, "Controls" to see how to select a specific window. Instant Lockerz Invite - www.instantlockerzinvite.co.uk
myspacee Posted February 15, 2010 Author Posted February 15, 2010 thank you for try. When run script, if you have some .pdf files in @ScriptDir, you have list on the left. Click on .pdf load file on the right. Now you see on botton-left symbol + and - + = zoom_in - = zoom_out When you press GUI buttons (+ and -) user can zoom in/out on pdf loaded. ($browser bj) Post modified source with controlsend() attemp : expandcollapse popup#include <GUIConstants.au3> #include <Misc.au3> #include <GuiButton.au3> #include <WindowsConstants.au3> #include <String.au3> #include <GuiListView.au3> #include <array.au3> #Include <Constants.au3> #Include <GuiButton.au3> #include <GUIComboBox.au3> #include <GuiConstantsEx.au3> #Include <File.au3> #include <WinAPI.au3> #include <GDIPlus.au3> #include <String.au3> #include <ScreenCapture.au3> #include <GUIConstantsEx.au3> #include <ButtonConstants.au3> ;~ 13-02-10_19-56-18.DOMENICA 140210.pdf ;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ;// set variabili ;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// dim $my_selection = "", $my_old_selection = $my_selection, $sText= "", $my_selection_index ;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ;// Press Ecs key to exit ;// Press ALT key to Makes JPG of the selection ;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ;// set variabili ;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// Const $DIB_RGB_COLORS = 0 Global $GUI, $CopyWin, $PixelArray, $CopyWin, $e, $d, $PixelsReady = 0, $Start = 0 Global $my_Width, $my_Height, $my_base, $my_altezza, $Ext = "png" dim $apos[4] Local $aMPos, $GuisInfo, $f_snapshot = 0 dim $my_ratio = 1, $f_resize = 0 ;//////////////////////////////////////////////////////////////////// ;// READ INI per letture variabili utente ;//////////////////////////////////////////////////////////////////// If FileExists(@ScriptDir & "\visore.ini") Then $file = FileOpen(@ScriptDir & "\visore.ini", 0) ; Check if file opened for reading OK If $file = -1 Then MsgBox(0, "Error", "Unable to open file.") Exit EndIf $my_PDF_SOURCE = stringsplit(FileReadLine($file, 1), "=") $my_PDF_DONE = stringsplit(FileReadLine($file, 2), "=") $my_PDF_TEMP = stringsplit(FileReadLine($file, 3), "=") $my_ZOOM_DEFAULT = stringsplit(FileReadLine($file, 4), "=") $my_Delay = stringsplit(FileReadLine($file, 5), "=") $my_New_Day = stringsplit(FileReadLine($file, 6), "=") FileClose($file) $PDF_SOURCE = StringStripWS($my_PDF_SOURCE[2], 3) $PDF_DONE = StringStripWS($my_PDF_DONE[2], 3) $PDF_TEMP = StringStripWS($my_PDF_TEMP[2], 3) $ZOOM_DEFAULT = StringStripWS($my_ZOOM_DEFAULT[2], 3) $Delay = StringStripWS($my_Delay[2], 3) $New_Day = StringStripWS($my_New_Day[2], 3) If StringRight($PDF_SOURCE, 1) <> "\" Then $PDF_SOURCE &= "\" If StringRight($PDF_DONE, 1) <> "\" Then $PDF_DONE &= "\" If StringRight($PDF_TEMP, 1) <> "\" Then $PDF_TEMP &= "\" EndIf ;~ $hGUI_child = GUICreate("Send", 953, 200, 100, 267) ;~ GUISetState(@SW_HIDE) ;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// ;// GUI ;////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// #Region ### START Koda GUI section ### Form=C:\Program Files\Koda 1.7.01\Forms\QuickFTP\FNTConvert.kxf $hGUI = GUICreate("Dispatcher", 953, 701, 100, 100) ;~ $Group1 = GUICtrlCreateGroup("Viewer", 264, 8, 681, 689) ;~ GUICtrlCreateGroup("", -99, -99, 1, 1) $zoom_in = GUICtrlCreateButton("+", 8, 500, 49, 49, 0) GUICtrlSetFont(-1, 32, 400, 0, "MS Sans Serif") $file_opener = GUICtrlCreateButton("APRI", 108, 500, 49, 49, $BS_ICON) GUICtrlSetImage(-1, "shell32.dll", 22) $zoom_out = GUICtrlCreateButton("-", 208, 500, 49, 49, 0) GUICtrlSetFont(-1, 32, 400, 0, "MS Sans Serif") $INVIA = GUICtrlCreateButton("INVIA", 8, 552, 249, 65, 0) GUICtrlSetFont(-1, 16, 400, 0, "MS Sans Serif") $ESCI = GUICtrlCreateButton("ESCI", 8, 622, 249, 65, 0) GUICtrlSetFont(-1, 16, 400, 0, "MS Sans Serif") $Combo1 = GUICtrlCreateCombo("Combo1", 8, 401, 249, 21) $Label1 = GUICtrlCreateLabel("Destinazione", 9, 364, 143, 33) GUICtrlSetFont(-1, 18, 400, 0, "MS Sans Serif") $INVIATI = GUICtrlCreateButton("Vedi già inviati", 8, 285, 249, 65, 0) GUICtrlSetFont(-1, 16, 400, 0, "MS Sans Serif") $Obj = ObjCreate("Shell.Explorer.1") $browser = GUICtrlCreateObj($Obj, 275, 25, 665, 665) GUICtrlSetResizing ( -1, $GUI_DOCKRIGHT ) $hCombo = GUICtrlCreateCombo("", 8, 20, 249, 273, BitOR($CBS_SIMPLE,$CBS_AUTOHSCROLL,$CBS_DISABLENOSCROLL,$WS_VSCROLL)) GUISetState(@SW_SHOW, $hGUI) #Region ### START Koda GUI section ### Form= $hGUI_child = GUICreate("Inserisci ICU", 593, 205, 228, 337) $Label1 = GUICtrlCreateLabel("Origine :", 16, 8, 160, 17) $Label2 = GUICtrlCreateLabel("Tipologia :", 16, 33, 161, 17) $Label3 = GUICtrlCreateLabel("Destinazione :", 16, 57, 161, 17) $Label4 = GUICtrlCreateLabel("Avviso :", 16, 81, 159, 17) $Label5 = GUICtrlCreateLabel("Inserire il nome di impaginazione di 5 caratteri [W finale automatica]", 16, 105, 319, 17) $ICU = GUICtrlCreateInput("ICU", 348, 101, 233, 21) $Btn_send = GUICtrlCreateButton("Continua", 16, 148, 233, 33, 0) GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif") $Btn_cancel = GUICtrlCreateButton("Annulla ...", 348, 148, 233, 33, 0) GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif") GUISetState(@SW_HIDE, $hGUI_child) #EndRegion ### END Koda GUI section ### ;popolate combo _GUICtrlComboBox_BeginUpdate($hCombo) _GUICtrlComboBox_AddDir($hCombo, @ScriptDir & "\*.pdf") _GUICtrlComboBox_EndUpdate($hCombo) ;select first element _GUICtrlComboBox_SetCurSel($hCombo, $my_selection_index) $my_selection = _GUICtrlComboBox_GetCurSel($hCombo) _GUICtrlComboBox_GetLBText($hCombo, $my_selection, $sText) $Obj.Navigate(@ScriptDir & '\' & $sText) While 1 $Msg = GUIGetMsg() Select Case $msg = $GUI_EVENT_CLOSE $question = MsgBox(4, "Dispatcher", "Really quit ?") if $question = 6 then Exit ;if yes -> close program Case $Msg = $zoom_in Send("{CTRLDOWN}") Send("{NUMPAD1}") Send("{CTRLup}") Case $Msg = $file_opener Case $Msg = $zoom_out ;ControlSend ( "title", "text", controlID, "string" [, flag] ) ControlSend($hGUI, "Dispatcher", $browser, "^{NUMPAD1}", 1) Case $Msg = $INVIA #Region ### START Koda GUI section ### Form= $hGUI_child = GUICreate("Inserisci ICU", 593, 205, 228, 337) $Label1 = GUICtrlCreateLabel("Origine :", 16, 8, 160, 17) $Label2 = GUICtrlCreateLabel("Tipologia :", 16, 33, 161, 17) $Label3 = GUICtrlCreateLabel("Destinazione :", 16, 57, 161, 17) $Label4 = GUICtrlCreateLabel("Avviso :", 16, 81, 159, 17) $Label5 = GUICtrlCreateLabel("Inserire il nome di impaginazione di 5 caratteri [W finale automatica]", 16, 105, 319, 17) $ICU = GUICtrlCreateInput("ICU", 348, 101, 233, 21) $Btn_send = GUICtrlCreateButton("Continua", 16, 148, 233, 33, 0) GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif") $Btn_cancel = GUICtrlCreateButton("Annulla ...", 348, 148, 233, 33, 0) GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif") ;~ GUISetState(@SW_HIDE, $hGUI_child) GUISetState(@SW_show, $hGUI_child) Case $Msg = $Btn_cancel GUIDelete($hGUI_child) EndSelect ;~ EndSwitch $my_selection = _GUICtrlComboBox_GetCurSel($hCombo) _GUICtrlComboBox_GetLBText($hCombo, $my_selection, $sText) if $my_old_selection <> $my_selection Then ;~ GUISetState(@SW_HIDE) $Obj.Navigate(@ScriptDir & '\' & $sText) GUISetState(@SW_SHOW, $hGUI) $my_old_selection = $my_selection EndIf sleep(10) WEnd Thank you for try, m.
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