gpt4 book ai didi

python - 如何让 getOpenFileName 记住上次打开的路径?

转载 作者:太空狗 更新时间:2023-10-29 20:42:17 25 4
gpt4 key购买 nike

根据getOpenFileName指令:

QString fileName = QFileDialog.getOpenFileName(this, tr("Open File"), 
"/home",
tr("Images (*.png *.xpm *.jpg)"));

如何让对话框在关闭时记住上次的路径?

tr("Open File") 中的 tr 是什么意思?

谢谢

最佳答案

如果省略 dir 参数(或传入空字符串),对话框应该记住最后一个目录:

filename = QtGui.QFileDialog.getOpenFileName(
parent, 'Open File', '', 'Images (*.png *.xpm *.jpg)')

tr函数用于翻译用户可见的字符串。如果您永远不会为您的应用程序提供翻译,则可以省略它。

编辑:

似乎在所有平台/桌面上可能不会自动记住开始目录,这取决于您是否使用 native 对话框。如果使用 Qt 的内置对话框,则应始终在所有平台上自动记住起始目录(即使在应用程序调用之间)。要尝试非本地对话,请执行以下操作:

filename = QtGui.QFileDialog.getOpenFileName(
parent, 'Open File', '', 'Images (*.png *.xpm *.jpg)',
None, QtGui.QFileDialog.DontUseNativeDialog)

或者,您可以使用 QFileDialog constructor ,这将总是创建一个非本地对话框:

dialog = QtGui.QFileDialog(parent)
dialog.setWindowTitle('Open File')
dialog.setNameFilter('Images (*.png *.xpm *.jpg)')
dialog.setFileMode(QtGui.QFileDialog.ExistingFile)
if dialog.exec_() == QtGui.QDialog.Accepted:
filename = dialog.selectedFiles()[0]

关于python - 如何让 getOpenFileName 记住上次打开的路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23002801/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com