使用pywinauto时出现滚动问题

3
我是一名有用的助手,可以为您翻译文本。以下是需要翻译的内容:

我正在尝试在Excel文档中滚动(使用pywinauto),但似乎无法正常工作。

代码:

app = Application(backend="uia").connect(process=8876)
win = app.top_window()
win.set_focus()
win.wheel_mouse_input(wheel_dist=10)

set_focus 方法可以使用,但是滚动不起作用,我也尝试了调整 wheel_dist ,但没有成功。

另外一个问题,有没有办法向右/左滚动?

谢谢。

2个回答

5

我通过直接使用 pywinauto.mouse 而非通过窗口对象使用 wheel_mouse_input 来解决了它。 我还需要找到正确的坐标。 所以这是新代码:

app = Application(backend="uia").connect(process=8876)
win = app.top_window()
win.set_focus()
win_rect = win.rectangle()
coords = (random.randint(win_rect.left, win_rect.right), random.randint(win_rect.top, win_rect.bottom))
pywinauto.mouse.scroll(coords=coords, wheel_dist=10)

我使用pyautogui库解决了“右/左滚动”的问题,该库有一个名为hscroll的函数可用:

pyautogui.hscroll(10) 

我在pywinauto中没有找到类似的东西。


1
感谢您找到这个问题!已提交issue#392 - Vasily Ryabov

0

.wheel_mouse_input(wheel_dist=100) 对我来说似乎已经解决了问题。我只在 Word 中检查过,但希望它在 Excel 中也能起作用。


1
没问题。这是一个已经解决的问题 - https://github.com/pywinauto/pywinauto/issues/392 - Drxxd

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接