1 post in this topic
Hello, I have a Logitech MX500 mouse, this has 7 buttons plus a wheel.
I am trying to figure out how to detect clicks on three of the buttons on this mouse but have been unable to do so. I am not running any Logitech software just the standard Windows 7 driver. The buttons are all working fine but when I try to figure out which button was clicked unable to detect three of the buttons.
Using this code snippet I am able to see all the button presses with the exception of these three marked by '?'.
Is there some alternate method for detecting button clicks? I have been searching for example but have yet to find anything.
#include <Misc.au3> Dim $a While 1 For $a = 1 To 100 If _IsPressed($a) Then ConsoleWrite("you pressed " & $a & @CRLF) Next WEnd
In my work place they blocked the application movemouse. so y decided to do one by myself , to cheat the system.
I have used some peaces of code from another scripts I have, and also I have found in this forum
Hope this helps
$version="0.2" #include <Misc.au3> If _Singleton(@ScriptName, 1) = 0 Then ; allow only one instance MsgBox(0, "Warning", "An occurence of " & @ScriptName & " is already running") Exit EndIf #region tray icon #NoTrayIcon Opt("TrayIconHide", 0) Opt("TrayMenuMode", 1) TraySetToolTip("Ratoner "& $version) Local $exititem = TrayCreateItem("Exit") TraySetState(1) ; Show the tray menu. #endregion #region variables $BlockScreensaver=1 $flagMouse=1 $MouseNotMovedCounter=0 $posMouseMovedX=0 $posMouseMovedY=0 $Counter= 0 #endregion #region main Local $hTimer = TimerInit() while 1 $Counter=$Counter+1 if $Counter>1000 then CheckifMouseMove() if $MouseNotMovedCounter>2 then moveMouse() $Counter= 0 endif Switch TrayGetMsg() Case $exititem exit EndSwitch sleep(50) wend #endregion #region functions func CheckifMouseMove() ;~ ConsoleWrite("+CheckifMouseMove()" & @crlf) $posMouseMoved = MouseGetPos() if $posMouseMovedX<>$posMouseMovedor $posMouseMovedY <> $posMouseMoved then $posMouseMovedX=$posMouseMoved $posMouseMovedY=$posMouseMoved $MouseNotMovedCounter=0 ;~ ConsoleWrite('>$MouseNotMovedCounter = ' & $MouseNotMovedCounter & @crlf ) Else ;$MouseMoved=0 $MouseNotMovedCounter=$MouseNotMovedCounter+1 ;~ ConsoleWrite('--$MouseNotMovedCounter = ' & $MouseNotMovedCounter & @crlf ) endif EndFunc func moveMouse() ;~ ConsoleWrite("+moveMouse" & @crlf) Local $posMouse = MouseGetPos() $flagMouse=$flagMouse*-1 Local $new_y = $posMouse + $flagMouse ; + (10*$flagMouse) MouseMove($posMouse,$new_y) $MouseNotMovedCounter=0 ;~ ConsoleWrite("+mouseMove $MouseNotMovedCounter" & $MouseNotMovedCounter & @crlf) endfunc #endregion
I'm really new to AutoIT, and I have little experience with scripting or any sort of programming. But I'm trying to learn!
Right now, what I'm trying to do is make a quick script that repeats a few functions while a key is held down. I want to see if I can make a quick-burst script that might work in Fallout 4 with machine guns
#include <Misc.au3> $dll = DllOpen("user32.dll") While 1 Sleep(100) If _IsPressed("01", $dll) Then MouseDown("left") Sleep(320) MouseUp("left") Sleep(25) EndIf WEnd DllClose($dll) Right now, when I hold down my left mouse button, it just repeats the script once - then I have to release and hold again to enable it again. Is it possible to to start it from the top and basically just repeats itself while I'm holding down my mouse button?
In advance, thank you!
I want that when mouse cursor is in GUI, cursor would hide, and when cursor is outside GUI it would appear again.
(Sorry for my bad English)
Multi-monitor aware window centring function. Can handle various work area setups as outlined below:
Those are the variants I've tested.
#include <Math.au3> #include <WinAPI.au3> #include <WinAPIConstants.au3> #include <WinAPIGdi.au3> #include <WinAPISys.au3> #include <WindowsConstants.au3> Func activeWindowCenter() Const $window = WinGetHandle('[ACTIVE]') Const $monitorInfo = _WinAPI_GetMonitorInfo(_WinAPI_MonitorFromWindow($window)) Const $area = [DllStructGetData($monitorInfo, 1), DllStructGetData($monitorInfo, 3), DllStructGetData($monitorInfo, 2), DllStructGetData($monitorInfo, 4)] Const $size = WinGetPos($window) If @error Then Return EndIf If BitAND(_WinAPI_GetWindowLong($window, $GWL_STYLE), $WS_MAXIMIZE) Then Return EndIf Const $areaWidth = _Max($area, $area) - _Min($area, $area) Const $windowOffsetX = ($areaWidth - $size) / 2 Const $x = _Min($area, $area) + $windowOffsetX Const $areaHeight = _Max($area, $area) - _Min($area, $area) Const $windowOffsetY = ($areaHeight - $size) / 2 Const $y = _Min($area, $area) + $windowOffsetY WinMove($window, '', $x, $y, $size, $size, 2) EndFunc Here's simple usage:
; include the definition HotKeySet('#o', 'activeWindowCenter') While 1 Sleep(1000) WEnd