コード例 #1
0
    def openFile(self):

        if self.hasLogin:
            dialog = QFileDialog()
            # dayu_theme.apply(dialog)
            dialog.setStyleSheet(Data.getQSS())
            #根据当前所在文件目录,设置默认打开文件格式
            dialog.setNameFilter(u"资源文件(*.png);;图片文件(*.jpg *.png *.jpeg);;")
            #加载对应的文件
            dialog.setFileMode(QFileDialog.ExistingFiles)
            dialog.setViewMode(QFileDialog.Detail)
            self.paths = None
            if dialog.exec_():
                self.paths = dialog.selectedFiles()
            if self.paths == None:
                return

            # 创建标签选择窗口
            self.tagWidget = Tag.TagWidget(self.paths, self.userName)
            self.tagWidget.show()
            Data.setWindowCenter(self.tagWidget)
            self.tagWidget.send_tag_signal.connect(
                self.cenWinAddTags)  # 链接添加标签的信号到中心窗口添加标签方法
            self.tagWidget.load_file_signal.connect(self.slot_show_loading)

        else:

            self.slot_show_message(MMessage.info, (u'请先登录账号!'))
コード例 #2
0
    def setHeadPorfie(self):

        dialog = QFileDialog()
        dialog.setStyleSheet(Data.getQSS())
        #根据当前所在文件目录,设置默认打开文件格式
        dialog.setNameFilter(u"图片文件(*.jpg *.png *.jpeg);;")
        #加载对应的文件
        dialog.setFileMode(QFileDialog.ExistingFiles)
        dialog.setViewMode(QFileDialog.Detail)

        if dialog.exec_():
            imgPaths = dialog.selectedFiles()
            self.imgPath = imgPaths[0]

            img = cv2.imread(self.imgPath)
            flag = min(img.shape[0], img.shape[1])
            newimg = img[((img.shape[0] - flag) // 2):((img.shape[0] + flag) //
                                                       2),
                         ((img.shape[1] - flag) // 2):((img.shape[1] + flag) //
                                                       2)]
            newimg = cv2.resize(newimg, (150, 150),
                                interpolation=cv2.INTER_AREA)
            cv2.imwrite(hpPath + "\\" + "buffer.jpg", newimg)  #将图片作为缓存存入指定文件内
            # pixmap = QtGui.QPixmap(hpPath + "\\" + "buffer.jpg")
            # self.lab_headProfile.setPixmap(pixmap)

            # 打开头像编辑器
            self.hpw = headProfieWindow(self.imgPath)
            self.hpw.show()
コード例 #3
0
    def editHeadProfile(self):
        dialog = QFileDialog()
        dialog.setStyleSheet(Data.getQSS())
        #根据当前所在文件目录,设置默认打开文件格式
        dialog.setNameFilter(u"图片文件(*.jpg *.png *.jpeg);;")
        #加载对应的文件
        dialog.setFileMode(QFileDialog.ExistingFiles)
        dialog.setViewMode(QFileDialog.Detail)

        if dialog.exec_():
            imgPaths = dialog.selectedFiles()
            imgPath = imgPaths[0]

            self.editHeadProfileWin = headProfieWindow(imgPath)
            self.editHeadProfileWin.show()
            self.editHeadProfileWin.hPOK_signal.connect(
                lambda: self.setPicture())  #选中图片,更新头像
            self.editHeadProfileWin.hPOK_signal.connect(lambda: self.setWCHP())
コード例 #4
0
def get_folder(directory=None,
               title='Select Folder',
               show_files=False,
               parent=None):
    """
    Shows a open folder dialog
    :param directory: str, root directory
    :param title: str, select folder dialog title
    :param parent: QWidget
    :return: str, selected folder or None if no folder is selected
    """

    file_dialog = QFileDialog(parent)
    if show_files:
        file_dialog.setFileMode(QFileDialog.DirectoryOnly)
        file_dialog.setOption(QFileDialog.ShowDirsOnly, False)
    if directory:
        file_dialog.setDirectory(directory)
    directory = file_dialog.getExistingDirectory(parent, title)
    if directory:
        return directory