You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过pywinauto在文件浏览器中设置目标路径

解决pywinauto无法编辑文件浏览器地址栏的问题

针对你遇到的文件浏览器地址栏(Toolbar控件)无法输入路径的问题,试试以下几种可行方案:

方案1:用快捷键直接激活地址栏(最稳定)

Windows文件浏览器自带快捷键Alt+D可以直接选中地址栏,无需右键操作,步骤更简洁:

# 获取目标文件对话框窗口
file_dialog = app.window(best_match='Importar archivo', top_level_only=True)
# 先激活窗口
file_dialog.set_focus()
# 按下Alt+D选中地址栏(pywinauto中用%代表Alt键)
file_dialog.type_keys('%d')
# 输入目标路径,with_spaces=True处理路径中的空格
file_dialog.type_keys(r"C:\Users\User\OneDrive\Documentos\Automatizacion de Swiss Manager", with_spaces=True)
# 按回车确认路径跳转
file_dialog.type_keys('{ENTER}')

方案2:定位Toolbar下的隐藏Edit控件

Toolbar控件本身可能嵌套了一个实际接收输入的Edit子控件,你可以直接定位这个子控件操作:

file_dialog = app.window(best_match='Importar archivo', top_level_only=True)
# 找到Toolbar4下的Edit子控件
address_edit = file_dialog.child_window(best_match='Toolbar4').child_window(control_type="Edit")
# 激活控件并输入路径
address_edit.set_focus()
address_edit.type_keys(r"C:\Users\User\OneDrive\Documentos\Automatizacion de Swiss Manager", with_spaces=True)

方案3:模拟右键选择编辑地址的流程

如果必须通过右键菜单操作,需要先触发右键、选择对应选项,再输入路径:

file_dialog = app.window(best_match='Importar archivo', top_level_only=True)
toolbar = file_dialog.child_window(best_match='Toolbar4', control_type="Toolbar")
# 右键点击Toolbar控件
toolbar.right_click()
# 注意:如果是西班牙语系统,菜单文本可能是"Editar dirección",请根据实际情况调整
app.window(title='Context').child_window(best_match='Edit Address').click()
# 输入目标路径
toolbar.type_keys(r"C:\Users\User\OneDrive\Documentos\Automatizacion de Swiss Manager", with_spaces=True)

关键提醒

  • 操作前一定要调用set_focus()确保窗口/控件处于激活状态,否则输入可能无效
  • 路径包含空格时,type_keys()必须加上with_spaces=True参数
  • 右键菜单的文本会随系统语言变化,需匹配对应语言的菜单选项文本

内容的提问来源于stack exchange,提问作者RRondon_Vzla

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 07:32:42