如何使用PyWinAuto单击ListView项?

2024-10-01 07:47:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图单击列表中的某个项目,但仍会出现错误。当我用鼠标按常规方式单击项目时,它会加载有关操作所需项目的信息

import pywinauto
from pywinauto import Application, keyboard, mouse
from pywinauto.keyboard import send_keys, KeySequenceError
from pywinauto.controls.common_controls import _listview_item, ListViewWrapper



letter_array = ['P']
path = r"\\10.10.3.106\Production\Embroidery\Embroidery Fonts\Art Deco"
path_to_embrilliance = f"C:\Program Files\BriTon Leap\Embrilliance\Embroidery.exe"

# pywinauto.Application().start(path_to_embrilliance)
# embrilliance = Application(backend='uia').connect(path=path_to_embrilliance)

pywinauto.Application().start(path_to_embrilliance)
embrilliance = Application(backend='uia').connect(path=path_to_embrilliance)
NewWindowEmbrilliance = embrilliance.Window_()

pywinauto.Application().start(r'explorer.exe "{}"'.format(path))
explorer = Application(backend='uia').connect(path='explorer.exe')
NewWindowExplorer = explorer.Window_()
NewWindowExplorer.set_focus()

# for 2 letter configuration //Art Deco
for i in range(len(letter_array)):
    some_letter = letter_array[i]

    file_item = NewWindowExplorer.ItemsView.get_item(
        'Art Deco{0}.dst'.format(some_letter))
    file_item.right_click_input()
    explorer.ContextMenu['Copy'].invoke()

    NewWindowEmbrilliance.set_focus()
    NewWindowEmbrilliance.draw_outline()
    NewWindowEmbrilliance.type_keys(r'^v')

    i += i

NewWindowExplorer.type_keys("%{F4}")

# NewWindowEmbrilliance.print_control_identifiers()

# select the last letter placed



ListViewWrapper.set_focus(self=NewWindowEmbrilliance)
ListViewWrapper.right_click_input()

需要单击艺术装饰以加载位置

enter image description here

enter image description here


Tags: topath项目fromimportapplicationkeysitem