文件路径选择对话框-PyQt5.QtWidgets.QFileDialog
发布时间:2023-12-31 11:44:13
PyQt5中可以使用QFileDialog类来创建文件路径选择对话框,用户可以使用该对话框选择一个文件或文件夹。通过QFileDialog类,我们可以选择打开一个文件、保存文件或选择文件夹。
下面是一个简单的使用例子:
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QPushButton, QVBoxLayout, QLabel, QFileDialog
class FileDialogExample(QWidget):
def __init__(self):
super().__init__()
self.setWindowTitle("File Dialog Example")
layout = QVBoxLayout()
self.setLayout(layout)
self.label = QLabel("Selected File: ")
layout.addWidget(self.label)
open_button = QPushButton("Open File")
open_button.clicked.connect(self.openFile)
layout.addWidget(open_button)
save_button = QPushButton("Save File")
save_button.clicked.connect(self.saveFile)
layout.addWidget(save_button)
select_folder_button = QPushButton("Select Folder")
select_folder_button.clicked.connect(self.selectFolder)
layout.addWidget(select_folder_button)
def openFile(self):
file_dialog = QFileDialog()
file_name, _ = file_dialog.getOpenFileName(self, "Open File", filter="Text files (*.txt)")
if file_name:
self.label.setText("Selected File: " + file_name)
def saveFile(self):
file_dialog = QFileDialog()
file_name, _ = file_dialog.getSaveFileName(self, "Save File", filter="Text files (*.txt)")
if file_name:
self.label.setText("Selected File: " + file_name)
def selectFolder(self):
file_dialog = QFileDialog()
folder_name = file_dialog.getExistingDirectory(self, "Select Folder")
if folder_name:
self.label.setText("Selected Folder: " + folder_name)
if __name__ == '__main__':
app = QApplication(sys.argv)
window = FileDialogExample()
window.show()
sys.exit(app.exec_())
在这个例子中,我们创建了一个简单的窗口,包含一个标签和三个按钮。点击"Open File"按钮时,会弹出文件选择对话框给用户选择一个文本文件。点击"Save File"按钮时,会弹出文件保存对话框给用户选择保存文件的路径和文件名。点击"Select Folder"按钮时,会弹出文件夹选择对话框给用户选择一个文件夹路径。
注意,在每个对话框的getOpenFileName、getSaveFileName和getExistingDirectory方法中,我们可以传入一个filter参数来指定文件类型的过滤器。filter参数可以是一个字符串形式的过滤器,也可以是过滤器的列表。
以上就是使用PyQt5中的QFileDialog类创建文件路径选择对话框的简单例子。希望对你有帮助!
