PyWinAuto: как получить индекс активного элемента дерева из приложения win32 - PullRequest
0 голосов
/ 14 июля 2020

Так, например, допустим, у меня есть дерево с тремя узлами, и я хочу вернуть индекс второго узла. Затем он должен вывести 1, потому что 1 - это индекс для второго узла. В документации к оболочке uia https://pywinauto.readthedocs.io/en/uia/code/pywinauto.controls.uiawrapper.html написана функция selected_item_index() return the index of a selected item" for the class pywinauto.controls.uiawrapper.UIAWrapper. Я протестировал это с помощью приложения Basi c uia ListView и написал что-то вроде app.ListBox.selected_item_index(), которое смогло получить для меня индекс. Однако это не будет работать с моим TreeView в моем приложении win32, поскольку метод оболочки, очевидно, не существует вне UIAwrapper (если я не слепой). Поэтому я просмотрел документацию https://pywinauto.readthedocs.io/en/uia/code/pywinauto.controls.win32_controls.html, и они упомянули некоторые индексные функции для оболочки Combox и Listbox, но не для TreeView. Теперь мне интересно, существует ли вообще такая функция. Возможно, я где-то пропустил документацию, которая объясняет это, но сейчас я бегаю по кругу.

...