gius Posted February 21, 2015 Share Posted February 21, 2015 Hello everyone, with this code pressing the button "+" applies the "zoom" in the window MS Word expandcollapse popup#include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <ScreenCapture.au3> Opt("WinTitleMatchMode", -2) $Form1 = GUICreate("", @DesktopWidth - 50, 50, 20, 0, BitOR($GUI_SS_DEFAULT_GUI,$WS_SIZEBOX,$WS_THICKFRAME)) $Label1 = GUICtrlCreateLabel("ZOOM", 15, 20, 62, 28) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button1 = GUICtrlCreateButton("+", 95, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button2 = GUICtrlCreateButton("-", 140, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button3 = GUICtrlCreateButton("F", 330, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button4 = GUICtrlCreateButton("F", 370, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $Button1 _zoom1 ("microsoft word") Case $Button2 _zoom2 ("microsoft word") Case $Button3 _zoom3 ("Firefox") Case $Button4 _zoom4 ("Firefox") Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Func _zoom1($hWnd) WinActivate($hWnd) Send("{CTRLDOWN}") MouseWheel("up", 1) Send("{CTRLUP}") EndFunc Func _zoom2($hWnd) WinActivate($hWnd) Send("{CTRLDOWN}") MouseWheel("down", 1) Send("{CTRLUP}") EndFunc Func _zoom3($hWnd) WinActivate($hWnd) Send("{CTRLDOWN}") MouseWheel("up", 1) Send("{CTRLUP}") EndFunc Func _zoom4($hWnd) WinActivate($hWnd) Send("{CTRLDOWN}") MouseWheel("down", 1) Send("{CTRLUP}") EndFunc but does not function with Mozilla Firefox,why?Can you help me to understand? thank you Link to comment Share on other sites More sharing options...
Celtic88 Posted February 21, 2015 Share Posted February 21, 2015 try this expandcollapse popup#include <GUIConstantsEx.au3> #include <WindowsConstants.au3> #include <ScreenCapture.au3> Opt("WinTitleMatchMode", -2) $Form1 = GUICreate("", @DesktopWidth - 50, 50, 20, 0, BitOR($GUI_SS_DEFAULT_GUI,$WS_SIZEBOX,$WS_THICKFRAME)) $Label1 = GUICtrlCreateLabel("ZOOM", 15, 20, 62, 28) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button1 = GUICtrlCreateButton("+", 95, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button2 = GUICtrlCreateButton("-", 140, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button3 = GUICtrlCreateButton("F", 330, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button4 = GUICtrlCreateButton("F", 370, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $Button1 _zoom1 ("microsoft word") Case $Button2 _zoom2 ("microsoft word") Case $Button3 _zoom3 ("[CLASS:MozillaWindowClass]") Case $Button4 _zoom4 ("[CLASS:MozillaWindowClass]") Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Func _zoom1($hWnd) WinActivate($hWnd) Send("{CTRLDOWN}") MouseWheel("up", 1) Send("{CTRLUP}") EndFunc Func _zoom2($hWnd) WinActivate($hWnd) Send("{CTRLDOWN}") MouseWheel("down", 1) Send("{CTRLUP}") EndFunc Func _zoom3($hWnd) if WinActivate($hWnd) then Send("{CTRL}^{+}{+}") EndFunc Func _zoom4($hWnd) if WinActivate($hWnd) then Send("{CTRL}^{-}{-}") EndFunc Link to comment Share on other sites More sharing options...
gius Posted February 21, 2015 Author Share Posted February 21, 2015 Thanks Celtic88, works very well! If I press the button where calls up the CLASS:Mozilla,the application disappears from the desktop,It is possible to do something about this?I tried to have two CLASS: Mozzilla and IE with the same key: Global $windows[2] = ["[CLASS:MozillaWindowClass]","[CLASS:ExplorerWindowClass]"] While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $Button1 _zoom1 ("microsoft word") Case $Button2 _zoom2 ("microsoft word") Case $Button3 _zoom3($windows) Case $Button4 _zoom4 ($windows) Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd but I believe it was wrong to call the variable $windows, and it does not work,it is possible to correct my mistake? thanks Link to comment Share on other sites More sharing options...
mikell Posted February 21, 2015 Share Posted February 21, 2015 expandcollapse popup#include <GUIConstantsEx.au3> #include <WindowsConstants.au3> Opt("WinTitleMatchMode", -2) Global $windows[2] = ["internet explorer", "mozilla firefox"] $Form1 = GUICreate("", @DesktopWidth - 50, 50, 20, 0, BitOR($GUI_SS_DEFAULT_GUI,$WS_SIZEBOX)) $Label1 = GUICtrlCreateLabel("ZOOM", 16, 20, 62, 28) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button1 = GUICtrlCreateButton("+", 96, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") $Button2 = GUICtrlCreateButton("-", 141, 10, 33, 33) GUICtrlSetFont(-1, 14, 400, 0, "MS Sans Serif") GUISetState(@SW_SHOW) While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $Button1 _zoom("+") Case $Button2 _zoom("NUMPADSUB") Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Func _zoom($key) For $i = 0 to UBound($windows)-1 $state = WinGetState($windows[$i]) ; if enabled and not minimized If BitAND($state, 7) and not BitAND($state, 16) Then WinActivate($windows[$i]) Send("^{" & $key & "}") Return EndIf Next EndFunc Link to comment Share on other sites More sharing options...
gius Posted February 21, 2015 Author Share Posted February 21, 2015 many thanks Mikell, works very well.I have noticed that I can not add to browsers other applications like MS Word,so I had to make a new global variable Global $test[3] = ["microsoft word", "microsoft excel" , "notepad"] While 1 $nMsg = GUIGetMsg() Switch $nMsg Case $Button1 _zoom("+") Case $Button2 _zoom("-"); "NUMPADSUB" Case $Button3 _zoom1 ($test) Case $Button4 _zoom2 ($test) Case $GUI_EVENT_CLOSE Exit EndSwitch WEnd Func _zoom1($hWnd) WinActivate($hWnd) Send("{CTRLDOWN}") MouseWheel("up", 1) Send("{CTRLUP}") EndFunc Func _zoom2($hWnd) WinActivate($hWnd) Send("{CTRLDOWN}") MouseWheel("down", 1) Send("{CTRLUP}") EndFunc but I can not understand how to be insertedin _zoom1 (.........................) _zoom2 (.........................) thanks Link to comment Share on other sites More sharing options...
mikell Posted February 21, 2015 Share Posted February 21, 2015 gius, You now have ALL the necessary samples to build the script you want For some applications you will need to use Ctrl+{+} and for others Ctrl+Wheel So you can use previous sample scripts and combine them Just be careful when dealing with arrays : Global $windows[2] = ["internet explorer", "mozilla firefox"] ; $windows is an array ; ... For $i = 0 to UBound($windows)-1 ; some code using $windows[$i] which is an array element Next 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