本文整理匯總了Python中PyQt5.QtWidgets.QFileDialog方法的典型用法代碼示例。如果您正苦於以下問題:Python QtWidgets.QFileDialog方法的具體用法?Python QtWidgets.QFileDialog怎麽用?Python QtWidgets.QFileDialog使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類PyQt5.QtWidgets
的用法示例。
在下文中一共展示了QtWidgets.QFileDialog方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: openSimulation
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def openSimulation(self):
dialog = QtWidgets.QFileDialog(self)
dialog.setWindowTitle('Open GMSH File')
dialog.setNameFilter('GMSH files (*.msh)')
dialog.setDirectory(QtCore.QDir.currentPath())
dialog.setFileMode(QtWidgets.QFileDialog.ExistingFile)
if dialog.exec_() == QtWidgets.QDialog.Accepted:
file_full_path = str(dialog.selectedFiles()[0])
else:
return None
self.thread = openGmshThread(file_full_path)
self.thread.start()
#Generates a sim_struct.session() structure, for saving and running
示例2: coilDialog
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def coilDialog(self):
#get folder with ccd files
try:
ccd_folder = os.path.join(SIMNIBSDIR, 'ccd-files')
except:
ccd_folder = './'
dialog = QtWidgets.QFileDialog(self)
dialog.setWindowTitle('Open Coil Definition File')
dialog.setNameFilter('Coil Definition files (*.ccd *.nii *.gz)')
dialog.setDirectory(ccd_folder)
dialog.setFileMode(QtWidgets.QFileDialog.ExistingFile)
if dialog.exec_() == QtWidgets.QDialog.Accepted:
fn = str(dialog.selectedFiles()[0])
else:
return None
self.tmslist.fnamecoil = fn
self.coil_line_edit.setText(fn)
示例3: selectFile
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def selectFile(self):
if self.fname is not None and os.path.isfile(self.fname):
eeg_cap_dir = os.path.dirname(self.fname)
else:
eeg_cap_dir = QtCore.QDir.currentPath()
dialog = QtWidgets.QFileDialog(self)
dialog.setWindowTitle('Open EEG Position file')
dialog.setNameFilter('(*.csv)')
dialog.setDirectory(eeg_cap_dir)
dialog.setFileMode(QtWidgets.QFileDialog.ExistingFile)
filename = None
if dialog.exec_() == QtWidgets.QDialog.Accepted:
filename = dialog.selectedFiles()
if filename:
self.fname = str(filename[0])
self.group_box.lineEdit.setText(self.fname)
示例4: createTorrent
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def createTorrent(self):
if os.path.isfile(self.inputEdit.text()):
save_fn = os.path.splitext(
os.path.split(self.inputEdit.text())[1])[0] + '.torrent'
else:
save_fn = self.inputEdit.text().split(os.sep)[-1] + '.torrent'
if self.last_output_dir and os.path.exists(self.last_output_dir):
save_fn = os.path.join(self.last_output_dir, save_fn)
fn = QtWidgets.QFileDialog.getSaveFileName(
self.MainWindow, 'Save torrent', save_fn,
filter=('Torrent file (*.torrent)'))[0]
if fn:
self.last_output_dir = os.path.split(fn)[0]
self.creation_thread = CreateTorrentQThread(
self.torrent,
fn)
self.creation_thread.started.connect(
self.creation_started)
self.creation_thread.progress_update.connect(
self._progress_update)
self.creation_thread.finished.connect(
self.creation_finished)
self.creation_thread.onError.connect(
self._showError)
self.creation_thread.start()
示例5: export_profile
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def export_profile(self):
fn = QtWidgets.QFileDialog.getSaveFileName(
self.MainWindow, 'Save profile', self.last_output_dir,
filter=('JSON configuration file (*.json)'))[0]
if fn:
exclude = self.excludeEdit.toPlainText().strip().splitlines()
trackers = self.trackerEdit.toPlainText().strip().split()
web_seeds = self.webSeedEdit.toPlainText().strip().split()
private = self.privateTorrentCheckBox.isChecked()
compute_md5 = self.md5CheckBox.isChecked()
source = self.sourceEdit.text()
data = {
'exclude': exclude,
'trackers': trackers,
'web_seeds': web_seeds,
'private': private,
'compute_md5': compute_md5,
'source': source
}
with open(fn, 'w') as f:
json.dump(data, f, indent=4, sort_keys=True)
self._statusBarMsg("Profile saved to " + fn)
示例6: import_profile
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def import_profile(self):
fn = QtWidgets.QFileDialog.getOpenFileName(
self.MainWindow, 'Open profile', self.last_input_dir,
filter=('JSON configuration file (*.json)'))[0]
if fn:
with open(fn) as f:
data = json.load(f)
exclude = data.get('exclude', [])
trackers = data.get('trackers', [])
web_seeds = data.get('web_seeds', [])
private = data.get('private', False)
compute_md5 = data.get('compute_md5', False)
source = data.get('source', '')
try:
self.excludeEdit.setPlainText(os.linesep.join(exclude))
self.trackerEdit.setPlainText(os.linesep.join(trackers))
self.webSeedEdit.setPlainText(os.linesep.join(web_seeds))
self.privateTorrentCheckBox.setChecked(private)
self.md5CheckBox.setChecked(compute_md5)
self.sourceEdit.setText(source)
except Exception as e:
self._showError(str(e))
return
self._statusBarMsg("Profile {} loaded".format(
os.path.split(fn)[1]))
示例7: _select_file
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def _select_file(self):
graphical_image_filters = [' '.join(el) for el in self._extension_filters] + ['All files (*)']
open_file, used_filter = QFileDialog().getSaveFileName(caption='Select the output file',
filter=';;'.join(graphical_image_filters))
if not any(open_file.endswith(el[0]) for el in self._extension_filters):
extension_from_filter = list(filter(lambda v: ' '.join(v) == used_filter, self._extension_filters))
if extension_from_filter:
extension = extension_from_filter[0][0]
else:
extension = self._extension_filters[0][0]
open_file += '.{}'.format(extension)
if open_file:
self.outputFile_box.setText(open_file)
self._update_ok_button()
示例8: _select_image
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def _select_image(self):
initial_dir = self._shared_state.base_dir
if self.selectedImageText.text() != '':
initial_dir = self.selectedImageText.text()
open_file, used_filter = QFileDialog().getOpenFileName(
caption='Select the 4d diffusion weighted image', directory=initial_dir,
filter=';;'.join(image_files_filters))
if os.path.isfile(open_file):
self.selectedImageText.setText(open_file)
self._shared_state.base_dir = os.path.dirname(open_file)
if self.selectedOutputText.text() == '':
split_path = split_image_path(open_file)
self.selectedOutputText.setText(os.path.join(split_path[0], split_path[1] + '_mask' + split_path[2]))
示例9: main_multi
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def main_multi(qtbot,mocker):
mocker.patch.object(QMessageBox, 'question', return_value=QMessageBox.Yes)
mocker.patch.object(QFileDialog, 'getSaveFileName', return_value=('out.step',''))
win = MainWindow()
win.show()
qtbot.addWidget(win)
qtbot.waitForWindowShown(win)
editor = win.components['editor']
editor.set_text(code_multi)
debugger = win.components['debugger']
debugger._actions['Run'][0].triggered.emit()
return qtbot, win
示例10: loadCalibration
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def loadCalibration(self):
filename, _ = QtWidgets.QFileDialog.getOpenFileName(
filter="Calibration Files (*.cal);;All files (*.*)")
if filename:
self.app.calibration.load(filename)
if not self.app.calibration.isValid1Port():
return
for i, name in enumerate(
("short", "open", "load", "through", "isolation")):
self.cal_label[name].setText(
_format_cal_label(self.app.calibration.data_size(name), "Loaded"))
if i == 2 and not self.app.calibration.isValid2Port():
break
self.calculate()
self.notes_textedit.clear()
for note in self.app.calibration.notes:
self.notes_textedit.appendPlainText(note)
self.app.settings.setValue("CalibrationFile", filename)
示例11: saveCalibration
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def saveCalibration(self):
if not self.app.calibration.isCalculated:
logger.debug("Attempted to save an uncalculated calibration.")
self.app.showError("Cannot save an unapplied calibration state.")
return
filedialog = QtWidgets.QFileDialog(self)
filedialog.setDefaultSuffix("cal")
filedialog.setNameFilter("Calibration Files (*.cal);;All files (*.*)")
filedialog.setAcceptMode(QtWidgets.QFileDialog.AcceptSave)
selected = filedialog.exec()
if selected:
filename = filedialog.selectedFiles()[0]
else:
return
if filename == "":
logger.debug("No file name selected.")
return
self.app.calibration.notes = self.notes_textedit.toPlainText().splitlines()
try:
self.app.calibration.save(filename)
self.app.settings.setValue("CalibrationFile", filename)
except IOError:
logger.error("Calibration save failed!")
self.app.showError("Calibration save failed.")
示例12: choosePath
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def choosePath(self):
"""
Bring up a modal window that allows the user to choose a valid workspace path.
"""
path = self.workspaceField.value()
if not isPathValid(path):
path = expandPath('~')
dialog = QtWidgets.QFileDialog(self)
dialog.setAcceptMode(QtWidgets.QFileDialog.AcceptOpen)
dialog.setDirectory(path)
dialog.setFileMode(QtWidgets.QFileDialog.Directory)
dialog.setOption(QtWidgets.QFileDialog.ShowDirsOnly, True)
dialog.setViewMode(QtWidgets.QFileDialog.Detail)
if dialog.exec_() == QtWidgets.QFileDialog.Accepted:
self.workspaceField.setValue(first(dialog.selectedFiles()))
示例13: selectPlugin
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def selectPlugin(self):
"""
Bring up a modal window that allows the user to choose a valid plugin archive.
"""
path = os.path.dirname(self.pluginField.value())
if not isPathValid(path):
path = expandPath('~')
dialog = QtWidgets.QFileDialog(self)
dialog.setAcceptMode(QtWidgets.QFileDialog.AcceptOpen)
dialog.setDirectory(path)
dialog.setFileMode(QtWidgets.QFileDialog.ExistingFile)
dialog.setViewMode(QtWidgets.QFileDialog.Detail)
dialog.setNameFilters([File.Zip.value])
if dialog.exec_() == QtWidgets.QFileDialog.Accepted:
self.pluginField.setValue(first(dialog.selectedFiles()))
self.confirmationBox.setEnabled(not isEmpty(self.pluginField.value()))
示例14: doExport
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def doExport(self):
"""
Export the current project.
"""
if not self.project.isEmpty():
dialog = QtWidgets.QFileDialog(self)
dialog.setAcceptMode(QtWidgets.QFileDialog.AcceptSave)
dialog.setDirectory(expandPath('~/'))
dialog.setFileMode(QtWidgets.QFileDialog.AnyFile)
dialog.setNameFilters(sorted(self.ontologyExporterNameFilters() + self.projectExporterNameFilters({File.Graphol})))
dialog.setViewMode(QtWidgets.QFileDialog.Detail)
dialog.selectFile(self.project.name)
dialog.selectNameFilter(File.Owl.value)
if dialog.exec_():
filetype = File.valueOf(dialog.selectedNameFilter())
try:
worker = self.createOntologyExporter(filetype, self.project, self)
except ValueError:
worker = self.createProjectExporter(filetype, self.project, self)
worker.run(expandPath(first(dialog.selectedFiles())))
示例15: doSaveAs
# 需要導入模塊: from PyQt5 import QtWidgets [as 別名]
# 或者: from PyQt5.QtWidgets import QFileDialog [as 別名]
def doSaveAs(self):
"""
Creates a copy of the currently open diagram.
"""
diagram = self.mdi.activeDiagram()
if diagram:
dialog = QtWidgets.QFileDialog(self)
dialog.setAcceptMode(QtWidgets.QFileDialog.AcceptSave)
dialog.setDirectory(expandPath('~/'))
dialog.setFileMode(QtWidgets.QFileDialog.AnyFile)
dialog.setNameFilters(self.diagramExporterNameFilters())
dialog.setViewMode(QtWidgets.QFileDialog.Detail)
dialog.selectFile(diagram.name)
dialog.selectNameFilter(File.Pdf.value)
if dialog.exec_():
filetype = File.valueOf(dialog.selectedNameFilter())
worker = self.createDiagramExporter(filetype, diagram, self)
worker.run(expandPath(first(dialog.selectedFiles())))