使用 python 在 Windows 中模拟水平滚动
Simulate horizontal scroll in Windows with python
正如标题所说,我正在寻找一种模拟水平滚动的方法(特别是在 OneNote 中)。我知道可以使用脚本在 AutoHotKey 中执行此操作,但我正在努力使程序尽可能本地化。我也知道在 mac 和 linux 上使用 PyAutoGui 是可能的,但我在与 windows 相关的任何事情上都空手而归。如果您有任何线索,我将不胜感激:)
对于以后 运行 遇到类似问题的任何人,这是我的解决方案:
import win32api, time, pyautogui as pag, keyboard
from win32con import *
running = True
lastX, lastY = pag.position()
while running:
while keyboard.is_pressed("shift"):
x, y = pag.position()
if lastX!=x:
win32api.mouse_event(MOUSEEVENTF_HWHEEL, 0, 0, x-lastX, 0) # Horizontal scrolling
lastX=x
if lastY!=y:
win32api.mouse_event(MOUSEEVENTF_WHEEL, 0, 0, lastY-y, 0) # Vertical scrolling
lastY=y
希望这对以后的任何人都有帮助:)
正如标题所说,我正在寻找一种模拟水平滚动的方法(特别是在 OneNote 中)。我知道可以使用脚本在 AutoHotKey 中执行此操作,但我正在努力使程序尽可能本地化。我也知道在 mac 和 linux 上使用 PyAutoGui 是可能的,但我在与 windows 相关的任何事情上都空手而归。如果您有任何线索,我将不胜感激:)
对于以后 运行 遇到类似问题的任何人,这是我的解决方案:
import win32api, time, pyautogui as pag, keyboard
from win32con import *
running = True
lastX, lastY = pag.position()
while running:
while keyboard.is_pressed("shift"):
x, y = pag.position()
if lastX!=x:
win32api.mouse_event(MOUSEEVENTF_HWHEEL, 0, 0, x-lastX, 0) # Horizontal scrolling
lastX=x
if lastY!=y:
win32api.mouse_event(MOUSEEVENTF_WHEEL, 0, 0, lastY-y, 0) # Vertical scrolling
lastY=y
希望这对以后的任何人都有帮助:)