コード例 #1
0
class del_window(QDialog, Ui_Form_Del):
    def __init__(self):
        super(del_window, self).__init__()
        self.setupUi(self)
        self.SlotInit()
        self.opsql = Operate_Sql()
        self.opfile = File_Operate()
        self.combobox_init()

    def SlotInit(self):
        self.btn_Cancel.clicked.connect(self.btn_hide)
        self.btn_Enter.clicked.connect(self.btn_enter)
        self.btn_Refresh.clicked.connect(self.refresh)

    def btn_hide(self):
        self.hide()

    def refresh(self):
        proclass = self.comboBox_selectClass.currentText()
        self.combobox_init(proclass=proclass)
        id = self.opsql.show_student_id(proclass)
        self.comboBox_selectId.clear()
        for i in range(len(id)):
            print(id[i])
            self.comboBox_selectId.addItem(str(id[i]))

    # 获取班级列表
    def combobox_init(self, proclass=None):
        self.comboBox_selectClass.clear()
        table_name, table_nmu = self.opsql.select_all_table()
        readlines = table_nmu
        lineindex = 0
        while lineindex < readlines:
            self.comboBox_selectClass.addItem(table_name[lineindex])
            lineindex += 1
        if proclass != '':
            self.comboBox_selectClass.setCurrentText(proclass)

    def btn_enter(self):
        CLASS = self.comboBox_selectClass.currentText()
        id = self.comboBox_selectId.currentText()

        # 从本地删除src_img文件
        path_src = '../src_img/{CLASS}_{id}.jpg'.format(CLASS=CLASS, id=id)
        path_emb = '../emb_img/{CLASS}_{id}.jpg'.format(CLASS=CLASS, id=id)

        if os.path.exists(path_src):
            os.remove(path_src)
        # 从本地删除emb_img文件
        if os.path.exists(path_emb):
            os.remove(path_emb)

        self.opsql.Delete_File_Name(CLASS, id)  # 从数据库中删除这个文件名
        msg = QtWidgets.QMessageBox.information(self, u"完成", u"删除完成!",
                                                buttons=QtWidgets.QMessageBox.Ok,
                                                defaultButton=QtWidgets.QMessageBox.Ok)

        self.combobox_init()
コード例 #2
0
class del_window(QDialog, Ui_Form_Del):
    def __init__(self):
        super(del_window, self).__init__()
        self.setupUi(self)
        self.SlotInit()
        self.opsql = Operate_Sql()
        self.opfile = File_Operate()
        self.line_delFaceName.clear()

    def SlotInit(self):
        self.btn_delcancel.clicked.connect(self.btn_hide)
        self.btn_delconfirm.clicked.connect(self.btn_DelFile)

    def btn_hide(self):
        self.hide()

    def btn_DelFile(self):
        '''
        读取字符串
        删除数据库对应行
        删除对应文件
        :return:
        '''
        text = self.line_delFaceName.text()
        flag = self.opsql.Select_Same_Name(text)
        if flag is False:  # 如果数据库不存在这个目录
            msg = QtWidgets.QMessageBox.warning(
                self,
                u"警告",
                u"不存在这个用户",
                buttons=QtWidgets.QMessageBox.Ok,
                defaultButton=QtWidgets.QMessageBox.Ok)

        else:
            # 从本地删除src_img文件
            if os.path.exists('../src_img/' + text + '.jpg') == True:
                os.remove('../src_img/' + text + '.jpg')

            # 从本地删除emb_img文件
            if os.path.exists('../emb_img/' + text + '.jpg') == True:
                os.remove('../emb_img/' + text + '.jpg')

            self.opsql.Delete_File_Name(text)  # 从数据库中删除这个文件名
            msg = QtWidgets.QMessageBox.information(
                self,
                u"完成",
                u"删除完成!",
                buttons=QtWidgets.QMessageBox.Ok,
                defaultButton=QtWidgets.QMessageBox.Ok)

            self.line_delFaceName.clear()
            self.btn_hide()  # 隐藏窗口