[英]PyQt5 - how to bring the Qfiledialog to the front?
我的代码使用PyQt打开一个文件夹选择对话框。 选择文件夹后,它将最小化。 我希望对话框在其他任何窗口前弹出。 我还没有找到解决方案。 有什么建议么?
from sys import executable, argv
from subprocess import check_output
from PyQt5.QtWidgets import QFileDialog, QApplication
def gui_fname(directory=''):
file = check_output([executable, __file__, directory])
return file.strip()
if __name__ == "__main__":
directory = argv[1]
app = QApplication([directory])
folderpath = QFileDialog.getExistingDirectory(None, "Select folder")
我认为您的问题来自以下功能中的“无”。 folderpath = QFileDialog.getExistingDirectory(None, "Select folder")
无法设置对话框模态,因为它没有父级。 通常,我们拥有self
而不是None
。
编辑:当然应用程序不是从QWidget继承的。 对于那个很抱歉。
改用这个。 我测试了它的工作原理:
import sys
from subprocess import check_output
from PyQt5.QtWidgets import QFileDialog, QApplication, QWidget
def gui_fname(directory=''):
file = check_output([executable, __file__, directory])
return file.strip()
if __name__ == "__main__":
app = QApplication(sys.argv)
wid = QWidget()
folderpath = QFileDialog.getExistingDirectory(wid, "Select folder")
sys.exit(app.exec_())
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.