def showSrcDialog(self): fname, _ = QFileDialog.getOpenFileUrl( self, filter='Message Files (*.json *.txt)') self.srcFilePath = fname.toLocalFile() self.srcFileName = self.srcFilePath.split('/')[-1] self.fileDestLabel.setText(self.srcFileName) print(self.srcFilePath, self.srcFileName)
def open_file(self): file_Chosen = QFileDialog.getOpenFileUrl(self, 'Open Music File', expanduser('~'), 'Audio (*.mp3 *.ogg *.wav)', '*.mp3 *.ogg *.wav') if file_Chosen is not None: self.currentPlaylist.addMedia(QMediaContent(file_Chosen[0]))
def import_media(self): """ 导入媒体文件 :return: """ self.parameter_source = QFileDialog.getOpenFileUrl()[0] self.input_player.setMedia(QMediaContent( self.parameter_source)) # 选取视频文件 # 设置 output 为一张图片,防止资源被占用 path_current = str(Path.cwd().joinpath("area_dangerous\1.jpg")) self.output_player.setMedia( QMediaContent(QUrl.fromLocalFile(path_current))) # 将 QUrl 路径转为 本地路径str self.predict_handler_thread.parameter_source = self.parameter_source.toLocalFile( ) self.input_player.pause() # 显示媒体 image_flag = os.path.splitext( self.predict_handler_thread.parameter_source)[-1].lower( ) in img_formats for item, button in self.button_dict.items(): if image_flag and item in ['play_pushButton', 'pause_pushButton']: button.setEnabled(False) else: button.setEnabled(True)
def choose_file(self): file_url, _ = QFileDialog.getOpenFileUrl(self) if not file_url: print('local path is empty') return else: self.img_path_text_box.setText(file_url.path())
def getURL(self,target,*other): qurl = QFileDialog.getOpenFileUrl() self.url = qurl[0].url() self.open_dialog.textView_filter_showFile.setText(self.url) if other: for each in other: each.setText(self.url) self.setviewText('File selected:\t'+self.url,target)
def selectFile(self, resultSet): qurl = QFileDialog.getOpenFileUrl() if qurl: url = qurl[0].url()[7:] if url not in resultSet: resultSet.append(url) self.textBrowser_file.setText(url) print(resultSet)
def browse_file(self): """ Allows the user to navigate to a folder so the file can be saved """ file_path = str( QFileDialog.getOpenFileUrl(self, 'Select File')[0].path()) if os.path.isfile(file_path[1:]): self.file_path_lineedit.setText(file_path[1:]) self.file_path = file_path[1:]
def get_file(self): file = QFileDialog() file.setAttribute(QtCore.Qt.WA_DeleteOnClose) file.setFileMode(QFileDialog.ExistingFile) self.path = file.getOpenFileUrl( filter="Windows Batch File (*.bat)")[0].toLocalFile() fMetrics = QtGui.QFontMetricsF(QtGui.QFont()) self.label.setText( fMetrics.elidedText(self.path, QtCore.Qt.ElideRight, self.label.width() - 15))
def icon_button(self): self.changes() file = QFileDialog() file.setAttribute(QtCore.Qt.WA_DeleteOnClose) file.setFileMode(QFileDialog.ExistingFile) img = file.getOpenFileUrl( filter="Image File (*.png *.jpg *.gif *.bmp)")[0].toLocalFile() self.treeWidget.selectedItems()[0].setIcon(0, QtGui.QIcon(img)) self.treeWidget.selectedItems()[0].icon_path = img self.pushButton_5.setEnabled(True)
def load_decode_file(self) -> None: filegialog = QFileDialog.getOpenFileUrl( self, 'Загрузка', filter=str("Текстовый файл (*.txt)")) if filegialog[0]: file_path = filegialog[0].toLocalFile() if file_path == '': return file = open(file_path, 'r') text = file.read() self.decode_start.setText(text)
def event(): if type == "dirctory": fname = QFileDialog.getExistingDirectory( self, 'Open file', '/home') else: fname = QFileDialog.getOpenFileUrl(self, 'Open file', '/home')[0].path() print(fname) if fname == "": return lineEdit.setText(fname)
def showDialog(self): # TODO 视频文件大小 # TODO 播放时长 # TODO 视频播放总时长显示 global fileList fileList = QFileDialog.getOpenFileUrl() print(fileList[0]) self.player.setMedia(QMediaContent(fileList[0])) # 选取视频文件 self.player.play()
def eemport(self): file_name = QFileDialog.getOpenFileUrl(self.centralwidget, caption="Open image settings as text.", filter="Text file (*.txt)", supportedSchemes=["txt"]) file_name = QUrl.toLocalFile(file_name[0]) if file_name != "": with open(file_name, "r") as f: d = literal_eval(f.read()) self.load_dict(d)
def __open_dir_picker(self): self.__shared_data.data_file_path = QFileDialog.getOpenFileUrl(self, 'Open the Hexoskin data directory', QDir.homePath())[0] if self.__shared_data.data_file_path is not None: try: self.__load_data() self.__add_selector_acc_gyr() self.__show_data('ACC_X', 'ACC_Y', 'ACC_Z') except FileNotFoundError: pass except UnicodeDecodeError: pass
def upload_picture(self, event): """ Uplaod User Picture """ # Open Choose File Dialog fileDialog = QFileDialog(parent=self) # Fetch Picture Path _dict["Picture"] = fileDialog.getOpenFileUrl( parent=self, caption="Choose Your Profile Pictue" )[0].url()[8:] # Show Picture in App self.Picture.setPixmap(QPixmap(_dict["Picture"]))
def loadPlaylist(self): """Load playlist.""" url, _ = QFileDialog.getOpenFileUrl( self, 'Load playlist', filter='Playlists (*.m3u)') count = self.playlist.mediaCount() self.playerCore.loadPlaylist(url) names = [] for index in range(count, self.playlist.mediaCount()): names.append(self.playlist.media(index).canonicalUrl().path()) self.addClicked(names)
def get_img(self): file = QFileDialog.getOpenFileUrl( self, "选择图片", getcwd(), "Image Files(*.jpg;*.jpeg;*.png;*.gif;*.bmp)") if file[1]: # 清除涂鸦 self.result_img.draw_list = [] self.result_img.all_draw = [] self.result_img.has_draw = False # 路径 self.file_path = file[0].toString()[8:] self.show_img(self.file_path, 1, show_options=True) self.set_img()
def open_dialog_choose_search_file(self): """Opens a file dialog to choose an example file""" home = os.path.expanduser( "~") if self.dirname.text() == "" else self.dirname.text() fileDialog = QFileDialog(directory=home) fileUrl: QUrl = fileDialog.getOpenFileUrl()[0] path = fileUrl.path()[1:] self.filename.setText(path) if path == "": self.fileIcon.setPixmap(QPixmap("../resources/file-inactive.png")) else: self.fileIcon.setPixmap(QPixmap("../resources/file.png")) self.check_search_available()
def importLabels(self): fileUrl, _ = QFileDialog.getOpenFileUrl( self.importExportButtons, "Import labels", QUrl.fromLocalFile(QDir.homePath()), "CSV (*.csv)") fileName = fileUrl.toLocalFile() if fileName != '': with open(fileName, mode='r') as csv_file: labels = csv.reader(csv_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL) self.updateLabels(labels)
def actionOpenFile(self): self.file_path = QFileDialog.getOpenFileUrl( self, "打开文件", filter="Images (*.bmp *.png *.jpg)") if not self.file_path[0].isValid(): return self.file_name = self.file_path[0].fileName() self.file_path = self.file_path[0].toLocalFile() self.lineedit_fpath.setText(self.file_path) self.image_ori = QImage(self.file_path) self.slider_scale.setValue(0) # self.newText.emit(str(text)) self.slider_scale.valueChanged.emit(0) # 必须强制发送一次,否则如果上次未变化,会没有这个消息 # self.label_image.setGeometry(0, 0, self.image_ori.width(), self.image_ori.height()) # self.label_image.setPixmap(QPixmap.fromImage(self.image_ori)) print("打开 " + self.file_path)
def select_file(self): """Set path to pdf file to handle and get its name.""" file_path = QFileDialog.getOpenFileUrl(caption='Select file')[0].path() if file_path.endswith('.pdf'): self.select_file_label.setText('File selected') self.file_path = file_path self._clear_page_label() # enable document processing button and boxes and disable # save button self.dpi_box.setDisabled(False) self.color_mode_box.setDisabled(False) self.image_format_box.setDisabled(False) self.process_doc_btn.setDisabled(False) self.save_file_btn.setDisabled(True)
def importCsv(self): if hasattr(self, "openedFile"): suggestedName = QUrl.fromLocalFile(self.getCSVPath()) else: suggestedName = QUrl.fromLocalFile(QDir.homePath()) fileUrl, _ = QFileDialog.getOpenFileUrl(self, "Import marks", suggestedName, "CSV (*.csv)") fileName = fileUrl.toLocalFile() if fileName != '': with open(fileName, mode='r') as csv_file: labels = csv.reader(csv_file, delimiter=',', quotechar='"', quoting=csv.QUOTE_MINIMAL) self.editorWidget.set_marks(labels)
def openFileNameDialog(self): options = QFileDialog.Options() options |= QFileDialog.DontUseNativeDialog #fileName, _ = QFileDialog.getOpenFileName(self, "QFileDialog.getOpenFileName()", "",".csv Files (*.csv)", options = options) #if fileName: # print(fileName) fileURL, _ = QFileDialog.getOpenFileUrl(self, "QFileDialog.getOpenFileUrl()", "", ".csv Files (*.csv)", options=options) print(fileURL) if (fileURL.toString() != ''): self.dfExport = pd.read_csv(fileURL.toString(), index_col=False) self.ui.bgg_tabs.setTabEnabled(1, True) self.ui.bgg_tabs.setCurrentIndex(1) self.ui.dfPreview.setEnabled(True) self.updatePreview() else: print('nada')
def action_event(self, event, item_indices=None): if event == Action.ADD_FILE: file, _ = QFileDialog.getOpenFileUrl(caption="Select a File") if not file.isEmpty(): self.files_changed_event(True, [file]) elif event == Action.ADD_DIR: _dir = QFileDialog.getExistingDirectoryUrl(caption="Select a directory") if not _dir.isEmpty(): self.files_changed_event(True, [_dir]) elif event == Action.SETTINGS: TransCodaSettings.TransCodaSettings().exec() elif event == Action.DEL_ALL: self.main_panel.clear_table() elif event == Action.DEL_FILE: self.main_panel.remove_files(item_indices) elif event == Action.ENCODE: if self.executor is not None and self.executor.is_running(): self.executor.stop_scan() self.statusBar().showMessage("Stop command issued. Waiting for threads to finish") return self.validate_and_start_encoding(run_indices=item_indices) elif event == Action.CHANGE_STATUS_SUCCESS: self.main_panel.update_item_status(item_indices, EncoderStatus.SUCCESS) elif event == Action.CHANGE_STATUS_READY: self.main_panel.update_item_status(item_indices, EncoderStatus.READY) elif event == Action.OPEN_FILE: self.open_paths_in_system_default(item_indices, "file") elif event == Action.OPEN_SOURCE: self.open_paths_in_system_default(item_indices, "file", func=os.path.dirname) elif event == Action.OPEN_DEST: self.open_paths_in_system_default(item_indices, "output_file", func=os.path.dirname) elif event == Action.ABOUT: with open(os.path.join(os.path.dirname(__file__), "resource/about.html"), 'r') as file: about_html = file.read() QMessageBox.about(self, TransCoda.__APP_NAME__, about_html.format(APP_NAME=TransCoda.__APP_NAME__, VERSION=TransCoda.__VERSION__, YEAR=datetime.now().year))
def showFileChooser(self): self.gameID = 0 self.gameIDs = {} self.raceID = 0 self.raceIDs = {} self.weaponID = 0 if self.conn is not None: self.conn.close() self.conn = None self.gameBox.clear() file = QFileDialog.getOpenFileUrl(self, "Open file", filter="DB files (*.db)") if file[0] != QUrl(""): url = file[0].toLocalFile() self.conn = sqlite3.connect(url) self.dbLabel.setText("Connected to: " + file[0].fileName()) self.c = self.conn.cursor() self.c.execute("SELECT GameID, GameName FROM FCT_Game") results = self.c.fetchall() for result in results: id = result[0] name = result[1] self.gameIDs[name] = id self.gameBox.addItem(name) self.gameBox.setDisabled(False)
class mainWindow(QMainWindow, formClass): def __init__(self): super(mainWindow, self).__init__() self.setupUi(self) # File Menu Triggers self.actionOpen.triggered.connect(self.openClicked) self.actionNew.triggered.connect(self.newClicked) # Tool Menu Triggers self.actionAddQ.triggered.connect(self.addClicked) self.actionEdit.triggered.connect(self.editClicked) # Help Menu Triggers self.actionAbout.triggered.connect(self.aboutClicked) # Button Triggers self.submitButton.clicked.connect(self.submitClicked) self.showSolButton.clicked.connect(self.showSolClicked) self.cancelEditButton.clicked.connect(self.cancelEditClicked) self.finishEditButton.clicked.connect(self.finishEditClicked) # Initialize View self.stackView.setCurrentIndex(0) def openClicked(self): self.fileDialog = QFileDialog(self) url, _ = self.fileDialog.getOpenFileUrl(self) if url.isValid: self.db = db() self.db.open(url.toLocalFile()) self.schedule = schedule(self.db, 5) def newClicked(self): self.fileDialog = QFileDialog(self) url, _ = self.fileDialog.getSaveFileUrl(self) if url.isValid: self.db = db() self.db.new(url.toLocalFile()) self.addClicked() def addClicked(self): self.stackView.setCurrentIndex(1) def editClicked(self): self.stackView.setCurrentIndex(1) def aboutClicked(self): print('about') def submitClicked(self): print('submit') def showSolClicked(self): print('show') def cancelEditClicked(self): print('cancel') self.stackView.setCurrentIndex(0) def finishEditClicked(self): print('finish') self.stackView.setCurrentIndex(0)
def on_bTest_clicked(self): """ Private method to test the selected options. """ if self.rOpenFile.isChecked() or self.rfOpenFile.isChecked(): if not self.cSymlinks.isChecked(): options = QFileDialog.Options(QFileDialog.DontResolveSymlinks) else: options = QFileDialog.Options() options = self.__adjustOptions(options) QFileDialog.getOpenFileName(None, self.eCaption.text(), self.eStartWith.text(), self.eFilters.text(), self.eInitialFilter.text(), options) elif self.rOpenFileUrl.isChecked(): if not self.cSymlinks.isChecked(): options = QFileDialog.Options(QFileDialog.DontResolveSymlinks) else: options = QFileDialog.Options() options = self.__adjustOptions(options) try: QFileDialog.getOpenFileUrl(None, self.eCaption.text(), QUrl(self.eStartWith.text()), self.eFilters.text(), self.eInitialFilter.text(), options, self.schemesEdit.text().split()) except TypeError: # PyQt5 < 5.13.0 contains an error QFileDialog.getOpenFileUrl(None, self.eCaption.text(), self.eStartWith.text(), self.eFilters.text(), self.eInitialFilter.text(), options, self.schemesEdit.text().split()) elif self.rOpenFiles.isChecked() or self.rfOpenFiles.isChecked(): if not self.cSymlinks.isChecked(): options = QFileDialog.Options(QFileDialog.DontResolveSymlinks) else: options = QFileDialog.Options() options = self.__adjustOptions(options) QFileDialog.getOpenFileNames(None, self.eCaption.text(), self.eStartWith.text(), self.eFilters.text(), self.eInitialFilter.text(), options) elif self.rOpenFileUrls.isChecked(): if not self.cSymlinks.isChecked(): options = QFileDialog.Options(QFileDialog.DontResolveSymlinks) else: options = QFileDialog.Options() options = self.__adjustOptions(options) try: QFileDialog.getOpenFileUrls(None, self.eCaption.text(), QUrl(self.eStartWith.text()), self.eFilters.text(), self.eInitialFilter.text(), options, self.schemesEdit.text().split()) except TypeError: # PyQt5 < 5.13.0 contains an error QFileDialog.getOpenFileUrls(None, self.eCaption.text(), self.eStartWith.text(), self.eFilters.text(), self.eInitialFilter.text(), options, self.schemesEdit.text().split()) elif self.rSaveFile.isChecked() or self.rfSaveFile.isChecked(): if not self.cSymlinks.isChecked(): options = QFileDialog.Options(QFileDialog.DontResolveSymlinks) else: options = QFileDialog.Options() options = self.__adjustOptions(options) QFileDialog.getSaveFileName(None, self.eCaption.text(), self.eStartWith.text(), self.eFilters.text(), self.eInitialFilter.text(), options) elif self.rSaveFileUrl.isChecked(): if not self.cSymlinks.isChecked(): options = QFileDialog.Options(QFileDialog.DontResolveSymlinks) else: options = QFileDialog.Options() options = self.__adjustOptions(options) try: QFileDialog.getSaveFileUrl(None, self.eCaption.text(), QUrl(self.eStartWith.text()), self.eFilters.text(), self.eInitialFilter.text(), options, self.schemesEdit.text().split()) except TypeError: # PyQt5 < 5.13.0 contains an error QFileDialog.getSaveFileUrl(None, self.eCaption.text(), self.eStartWith.text(), self.eFilters.text(), self.eInitialFilter.text(), options, self.schemesEdit.text().split()) elif self.rDirectory.isChecked(): options = QFileDialog.Options() if not self.cSymlinks.isChecked(): options |= QFileDialog.Options(QFileDialog.DontResolveSymlinks) if self.cDirOnly.isChecked(): options |= QFileDialog.Options(QFileDialog.ShowDirsOnly) else: options |= QFileDialog.Options(QFileDialog.Option(0)) options = self.__adjustOptions(options) QFileDialog.getExistingDirectory(None, self.eCaption.text(), self.eWorkDir.text(), options) elif self.rDirectoryUrl.isChecked(): options = QFileDialog.Options() if not self.cSymlinks.isChecked(): options |= QFileDialog.Options(QFileDialog.DontResolveSymlinks) if self.cDirOnly.isChecked(): options |= QFileDialog.Options(QFileDialog.ShowDirsOnly) else: options |= QFileDialog.Options(QFileDialog.Option(0)) options = self.__adjustOptions(options) try: QFileDialog.getExistingDirectoryUrl( None, self.eCaption.text(), QUrl(self.eWorkDir.text()), options, self.schemesEdit.text().split()) except TypeError: # PyQt5 < 5.13.0 contains an error QFileDialog.getExistingDirectoryUrl( None, self.eCaption.text(), self.eWorkDir.text(), options, self.schemesEdit.text().split())
def openVideoFile(self): self.player.setMedia(QMediaContent(QFileDialog.getOpenFileUrl()[0])) # 选取视频文件 self.player.play() # 播放视频 self.FLAG_PLAY = True
# self.player.setVideoOutput(self.wgt_video) # self.player.play() self.videoFullScreen = False self.widget.setFullScreen(0) self.widget.setMaximumSize(self.wsize) else: self.wsize = self.widget.size() self.widget.setFullScreen(1) # self.player.pause() # self.videoFullScreenWidget.show() # self.player.setVideoOutput(self.videoFullScreenWidget) # self.player.play() self.videoFullScreen = True # 这里进行按钮事件的编写 def test(self): self.label_8.setText("测试按钮") self.label_5.setText("测试按钮") if __name__ == '__main__': app = QApplication(sys.argv) player = QMediaPlayer() vw = QVideoWidget() # 定义视频显示的widget vw.show() player.setVideoOutput(vw) # 视频播放输出的widget,就是上面定义的 player.setMedia(QMediaContent(QFileDialog.getOpenFileUrl()[0])) # 选取视频文件 player.play() # 播放视频 # player.stop() sys.exit(app.exec_())
def choose_file_callback(self): file_path: QUrl = (QFileDialog.getOpenFileUrl( caption="Choose file"))[0] file_path: str = file_path.toString() if file_path: self.editable.setText(file_path)
class mainWindow(QMainWindow, formClass): def __init__(self, db, server): super(mainWindow, self).__init__() self.setupUi(self) self.db = db self.server = server # File Menu Triggers self.actionOpen.triggered.connect(self.openClicked) self.actionNew.triggered.connect(self.newClicked) # Tool Menu Triggers self.actionAddQ.triggered.connect(self.addClicked) self.actionEdit.triggered.connect(self.editClicked) # Help Menu Triggers self.actionAbout.triggered.connect(self.aboutClicked) # Button Triggers self.submitButton.clicked.connect(self.submitClicked) self.showSolButton.clicked.connect(self.showSolClicked) self.cancelEditButton.clicked.connect(self.cancelEditClicked) self.finishEditButton.clicked.connect(self.finishEditClicked) self.stackView.setCurrentIndex(0) def openClicked(self): self.fileDialog = QFileDialog(self) url, _ = self.fileDialog.getOpenFileUrl(self) if url.isValid(): self.db.load(url.toLocalFile()) self.stackView.setEnabled(True) self.menuTools.setEnabled(True) def newClicked(self): self.fileDialog = QFileDialog(self) url, _ = self.fileDialog.getSaveFileUrl(self) if url.isValid(): self.db.create(url.toLocalFile()) self.stackView.setEnabled(True) self.menuTools.setEnabled(True) def addClicked(self): self.stackView.setCurrentIndex(1) self.webPage.load(self.server.url) self.webPage.show() def editClicked(self): self.stackView.setCurrentIndex(1) def aboutClicked(self): print('about') def submitClicked(self): print('submit') def showSolClicked(self): print('show') def cancelEditClicked(self): print('cancel') self.stackView.setCurrentIndex(0) def finishEditClicked(self): print('finish') self.stackView.setCurrentIndex(0)
elif arguments.getsavefilename: from os.path import relpath savefilename = relpath(QFileDialog.getSaveFileName(None, pydialog_title, directory, filters)[0]) print(savefilename) sys.exit(0) elif arguments.getexistingdirectory: existingdirectory = QFileDialog.getExistingDirectory(None, pydialog_title, directory) print(existingdirectory) sys.exit(0) elif arguments.getopenurl: if arguments.multiple: r = [e.toString() for e in QFileDialog.getOpenFileUrls(None, pydialog_title, directory, filters)[0]] urls = " ".join(r) print(urls) else: url = QFileDialog.getOpenFileUrl(None, pydialog_title, directory, filters)[0].toString() print(url) sys.exit(0) elif arguments.getsaveurl: url = QFileDialog.getSaveFileUrl(None, pydialog_title, directory, filters)[0].toString() print(url) sys.exit(0) elif arguments.getcolor: from PyQt5.QtWidgets import QColorDialog if arguments.default: from PyQt5.QtGui import QColor color = QColorDialog.getColor(QColor(arguments.default)).name() else: color = QColorDialog.getColor().name() print(color) sys.exit(0)