pyqt5 使用QFileDialog保存文件示例
时间: 2024-03-09 18:18:19 浏览: 74
可以通过以下代码示例来使用 PyQt5 的 QFileDialog 进行文件保存:
```python
from PyQt5 import QtWidgets, QtGui, QtCore
class FileSave(QtWidgets.QMainWindow):
def __init__(self):
super(FileSave, self).__init__()
# 创建菜单栏和状态栏
self.initUI()
def initUI(self):
# 创建菜单栏
menubar = self.menuBar()
fileMenu = menubar.addMenu('File')
saveFile = QtWidgets.QAction('Save', self)
saveFile.setShortcut('Ctrl+S')
saveFile.triggered.connect(self.showDialog)
fileMenu.addAction(saveFile)
# 创建状态栏
self.statusBar()
self.setGeometry(300, 300, 350, 300)
self.setWindowTitle('File Save Example')
self.show()
def showDialog(self):
options = QtWidgets.QFileDialog.Options()
options |= QtWidgets.QFileDialog.DontUseNativeDialog
fileName, _ = QtWidgets.QFileDialog.getSaveFileName(self,"Save file","", "Text Files (*.txt);;All Files (*)", options=options)
if fileName:
with open(fileName, 'w') as f:
f.write('Hello World')
if __name__ == '__main__':
app = QtWidgets.QApplication([])
window = FileSave()
app.exec_()
```
运行程序后,菜单栏中的“File”菜单下将出现“Save”选项。当用户点击“Save”选项时,将调用 `showDialog` 方法。该方法将使用 `QFileDialog` 获取用户指定的文件名和路径,并将其保存为文件。此处我们将文件名设置为“Hello World”。
阅读全文