【Python】實驗三  Python GUI編程-學生信息管理系統


一、實驗目的

  1. 熟悉Qt Designer創建界面,實現界面和邏輯分離。
  2. 掌握信號,槽函數和信號與槽的綁定。
  3. 掌握PyQt5編程中的對話框QDialog、各類控件、主窗口QMainWindow。

二、實驗環境

計算機、Pycharm軟件、Qt Designer。

三、實驗內容與要求

1、通過通過Qt Designer實現界面

1)主界面

2)添加學習信息

3)刪除學生信息

4)修改學生信息界面

5)查詢學生信息

6)排名

2、通過QpushButton實現信號與槽,並將創建界面和邏輯分開實現。

(1)創建界面代碼概述(類):

(2)信號與槽、邏輯功能代碼概述(類):

3、通過Python編程實現顯示、增加、刪除、修改、查詢學生信息以及排序和退出系統的功能。

(1)添加:

def add(self):
        name = self.lineEdit.text()
        age = self.lineEdit_2.text()
        score = self.lineEdit_3.text()
        id = studentlist[len(studentlist) - 1][0] + 1
        studentlist.append([id, name, age, score])
        self.lineEdit.clear()
        self.lineEdit_2.clear()
        self.lineEdit_3.clear()

(2)刪除:

按序號👇

    def fbyid(self):
        did = int(self.lineEdit.text())
        for i in range(1, len(studentlist)):
            if studentlist[i][0] == did:
                findlist.append(i)
                dellist.append(i)
        if findlist == []:
            self.textEdit.setPlainText('查無此人!')
        else:
            self.textEdit.clear()
            i = findlist[0]
            self.textEdit.insertPlainText("序號:")
            self.textEdit.insertPlainText(str(studentlist[i][0]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("姓名:")
            self.textEdit.insertPlainText(str(studentlist[i][1]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("年齡:")
            self.textEdit.insertPlainText(str(studentlist[i][2]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("成績:")
            self.textEdit.insertPlainText(str(studentlist[i][3]))
            findlist.clear()
    def dbyid(self):
        del studentlist[dellist[0]]
        dellist.clear()
        self.lineEdit.clear()
        self.textEdit.clear()

按姓名👇

    def fbyname(self):
        dname = str(self.lineEdit.text())
        for i in range(1, len(studentlist)):
            if studentlist[i][1] == dname:
                findlist.append(i)
                dellist.append(i)
        if findlist == []:
            self.textEdit.setPlainText('查無此人!')
        else:
            self.textEdit.clear()
            for i in findlist[::-1]:
                self.textEdit.insertPlainText("序號:")
                self.textEdit.insertPlainText(str(studentlist[i][0]))
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText("姓名:")
                self.textEdit.insertPlainText(str(studentlist[i][1]))
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText("年齡:")
                self.textEdit.insertPlainText(str(studentlist[i][2]))
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText("成績:")
                self.textEdit.insertPlainText(str(studentlist[i][3]))
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText('\n')
                findlist.clear()
    def dbyname(self):
        for i in dellist[::-1]:
            del studentlist[i]
        dellist.clear()
        self.lineEdit.clear()
        self.textEdit.clear()

(3)查找:

按序號👇

	def fbyid(self):
        did = int(self.lineEdit.text())
        for i in range(1, len(studentlist)):
            if studentlist[i][0] == did:
                findlist.append(i)
                dellist.append(i)
        if findlist == []:
            self.textEdit.setPlainText('查無此人!')
        else:
            self.textEdit.clear()
            i = findlist[0]
            self.textEdit.insertPlainText("序號:")
            self.textEdit.insertPlainText(str(studentlist[i][0]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("姓名:")
            self.textEdit.insertPlainText(str(studentlist[i][1]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("年齡:")
            self.textEdit.insertPlainText(str(studentlist[i][2]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("成績:")
            self.textEdit.insertPlainText(str(studentlist[i][3]))
            findlist.clear()

按姓名👇

	def fbyname(self):
        dname = str(self.lineEdit.text())
        for i in range(1, len(studentlist)):
            if studentlist[i][1] == dname:
                findlist.append(i)
                dellist.append(i)
        if findlist == []:
            self.textEdit.setPlainText('查無此人!')
        else:
            self.textEdit.clear()
            for i in findlist[::-1]:
                self.textEdit.insertPlainText("序號:")
                self.textEdit.insertPlainText(str(studentlist[i][0]))
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText("姓名:")
                self.textEdit.insertPlainText(str(studentlist[i][1]))
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText("年齡:")
                self.textEdit.insertPlainText(str(studentlist[i][2]))
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText("成績:")
                self.textEdit.insertPlainText(str(studentlist[i][3]))
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText('\n')
                findlist.clear()

(4)修改:

按序號👇

    def fbyid(self):
        renewlist.clear()
        fid = int(self.lineEdit.text())
        for i in range(1, len(studentlist)):
            if studentlist[i][0] == fid:
                findlist.append(i)
                renewlist.append(i)
        if findlist == []:
            self.textEdit.setPlainText('查無此人!')
        else:
            self.textEdit.clear()
            i = findlist[0]
            self.textEdit.insertPlainText("序號:")
            self.textEdit.insertPlainText(str(studentlist[i][0]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("姓名:")
            self.textEdit.insertPlainText(str(studentlist[i][1]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("年齡:")
            self.textEdit.insertPlainText(str(studentlist[i][2]))
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText("成績:")
            self.textEdit.insertPlainText(str(studentlist[i][3]))
            self.textEdit_2.clear()
            findlist.clear()
    def renewmenu(self):
        self.srn1 = Renew1menu()
        self.srn1.show()
    def renew(self):
        i = renewlist[-1]
        studentlist[i][1] = self.lineEdit.text()
        studentlist[i][2] = self.lineEdit_2.text()
        studentlist[i][3] = self.lineEdit_3.text()

按姓名👇

    def fbyname(self):
        renewlist.clear()
        fname = str(self.lineEdit.text())
        for i in range(1, len(studentlist)):
            if studentlist[i][1] == fname:
                findlist.append(i)
                renewlist.append(i)
        if findlist == []:
            self.textEdit.setPlainText('查無此人!')
        else:
            self.textEdit.clear()
            self.textEdit.insertPlainText("序號")
            self.textEdit.insertPlainText(' ' * 7)
            self.textEdit.insertPlainText("姓名")
            self.textEdit.insertPlainText(' ' * 7)
            self.textEdit.insertPlainText("年齡")
            self.textEdit.insertPlainText(' ' * 7)
            self.textEdit.insertPlainText("成績")
            for i in findlist[:]:
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText('\n')
                self.textEdit.insertPlainText(str(studentlist[i][0]))
                self.textEdit.insertPlainText(' ' * 9)
                self.textEdit.insertPlainText(str(studentlist[i][1]))
                self.textEdit.insertPlainText(' ' * 7)
                self.textEdit.insertPlainText(str(studentlist[i][2]))
                self.textEdit.insertPlainText(' ' * 8)
                self.textEdit.insertPlainText(str(studentlist[i][3]))
            self.textEdit_2.clear()
            findlist.clear()
    def renewmenu(self):
        if len(renewlist) == 1:
            self.srn2 = Renew2menu()
            self.srn2.show()
        else:
            self.textEdit_2.setPlainText("暫不支持同名修改!請嘗試按序號修改!")
            renewlist.clear()
    def renew(self):
        i = renewlist[0]
        studentlist[i][1] = self.lineEdit.text()
        studentlist[i][2] = self.lineEdit_2.text()
        studentlist[i][3] = self.lineEdit_3.text()

(5)排序:

降序👇

    def down(self):
        downlist = sorted(studentlist[1:], key=lambda x: x[3], reverse=True)
        self.textEdit.clear()
        self.textEdit.insertPlainText("序號")
        self.textEdit.insertPlainText(' ' * 2)
        self.textEdit.insertPlainText("姓名")
        self.textEdit.insertPlainText(' ' * 2)
        self.textEdit.insertPlainText("年齡")
        self.textEdit.insertPlainText(' ' * 2)
        self.textEdit.insertPlainText("成績")
        for i in range(len(downlist)):
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText('\n')
            self.textEdit.insertPlainText(str(downlist[i][0]))
            self.textEdit.insertPlainText(' ' * 4)
            self.textEdit.insertPlainText(str(downlist[i][1]))
            self.textEdit.insertPlainText(' ' * 2)
            self.textEdit.insertPlainText(str(downlist[i][2]))
            self.textEdit.insertPlainText(' ' * 3)
            self.textEdit.insertPlainText(str(downlist[i][3]))

升序👇

    def up(self):
        downlist = sorted(studentlist[1:], key=lambda x: x[3])
        self.textEdit_2.clear()
        self.textEdit_2.insertPlainText("序號")
        self.textEdit_2.insertPlainText(' ' * 2)
        self.textEdit_2.insertPlainText("姓名")
        self.textEdit_2.insertPlainText(' ' * 2)
        self.textEdit_2.insertPlainText("年齡")
        self.textEdit_2.insertPlainText(' ' * 2)
        self.textEdit_2.insertPlainText("成績")
        for i in range(len(downlist)):
            self.textEdit_2.insertPlainText('\n')
            self.textEdit_2.insertPlainText('\n')
            self.textEdit_2.insertPlainText(str(downlist[i][0]))
            self.textEdit_2.insertPlainText(' ' * 4)
            self.textEdit_2.insertPlainText(str(downlist[i][1]))
            self.textEdit_2.insertPlainText(' ' * 2)
            self.textEdit_2.insertPlainText(str(downlist[i][2]))
            self.textEdit_2.insertPlainText(' ' * 3)
            self.textEdit_2.insertPlainText(str(downlist[i][3]))

(7)顯示:

class Showmenu(QtWidgets.QWidget,Ui_Form_showmenu):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
        if len(studentlist) == 1:
            self.textEdit.setPlainText("空無一人!")
        else:
            for i in range(1,len(studentlist)):
                self.textEdit.insertPlainText(str(studentlist[i][0]))
                self.textEdit.insertPlainText(' '*9)
                self.textEdit.insertPlainText(str(studentlist[i][1]))
                self.textEdit.insertPlainText(' '*7)
                self.textEdit.insertPlainText(str(studentlist[i][2]))
                self.textEdit.insertPlainText(' '*8)
                self.textEdit.insertPlainText(str(studentlist[i][3]))
                self.textEdit.insertPlainText('\n')
        self.pushButton.clicked.connect(self.close)

(8)退出系統:

self.pushButton_7.clicked.connect(self.close)

四、實驗過程

1、添加學生:

首先添加五個學生如下面一組圖。

2、刪除學生:

(1)按序號刪除:

數據承接上文,操作內容如下面一組圖。

(2)按姓名刪除:

此時我們再添加一組同名數據康神二,並進行按姓名刪除,如下面一組圖。

3、查找學生:

(1)按序號查找:

數據承接上文,操作內容如下面一組圖。

(2)按姓名查找:

此時我們添加一組新數據康神四,如下面一組圖。

4、修改學生:

(1)按序號修改:

數據承接上文,操作內容如下面一組圖。

(2)按姓名修改:

數據承接上文,操作內容圖下面一組圖。

5、排名:

數據承接上文,操作內容如下圖。

6、顯示學生:

數據承接上文,操作內容如下面一組圖。

7、退出:

五、實驗總結

  1. 熟悉了Qt Designer創建界面,實現了界面和邏輯分離。
  2. 掌握了信號,槽函數和信號與槽的綁定。
  3. 掌握了PyQt5編程中的對話框QDialog、各類控件、主窗口QMainWindow。
  4. 對窗口編程有了初步了解,今后還需要多加學習復習。

源碼

from PyQt5 import QtCore, QtGui, QtWidgets
import sys

studentlist = [[0, '零', 0, 0]]
findlist = []
dellist = []
renewlist = []

class Ui_Form_mainmenu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.verticalLayoutWidget = QtWidgets.QWidget(Form)
self.verticalLayoutWidget.setGeometry(QtCore.QRect(29, 80, 341, 431))
self.verticalLayoutWidget.setObjectName("verticalLayoutWidget")
self.verticalLayout = QtWidgets.QVBoxLayout(self.verticalLayoutWidget)
self.verticalLayout.setContentsMargins(0, 0, 0, 0)
self.verticalLayout.setObjectName("verticalLayout")
self.pushButton = QtWidgets.QPushButton(self.verticalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.verticalLayout.addWidget(self.pushButton)
self.pushButton_2 = QtWidgets.QPushButton(self.verticalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.verticalLayout.addWidget(self.pushButton_2)
self.pushButton_3 = QtWidgets.QPushButton(self.verticalLayoutWidget)
self.pushButton_3.setObjectName("pushButton_3")
self.verticalLayout.addWidget(self.pushButton_3)
self.pushButton_4 = QtWidgets.QPushButton(self.verticalLayoutWidget)
self.pushButton_4.setObjectName("pushButton_4")
self.verticalLayout.addWidget(self.pushButton_4)
self.pushButton_5 = QtWidgets.QPushButton(self.verticalLayoutWidget)
self.pushButton_5.setObjectName("pushButton_5")
self.verticalLayout.addWidget(self.pushButton_5)
self.pushButton_6 = QtWidgets.QPushButton(self.verticalLayoutWidget)
self.pushButton_6.setObjectName("pushButton_6")
self.verticalLayout.addWidget(self.pushButton_6)
self.pushButton_7 = QtWidgets.QPushButton(self.verticalLayoutWidget)
self.pushButton_7.setObjectName("pushButton_7")
self.verticalLayout.addWidget(self.pushButton_7)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(110, 10, 181, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "主頁——k"))
    self.pushButton.setText(_translate("Form", "顯示學生"))
    self.pushButton_2.setText(_translate("Form", "添加學生"))
    self.pushButton_3.setText(_translate("Form", "刪除學生"))
    self.pushButton_4.setText(_translate("Form", "查找學生"))
    self.pushButton_5.setText(_translate("Form", "修改學生"))
    self.pushButton_6.setText(_translate("Form", "排名"))
    self.pushButton_7.setText(_translate("Form", "退出"))
    self.label.setText(_translate("Form", "學生成績管理系統"))

class Ui_Form_showmenu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 10, 141, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(70, 460, 261, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout.addWidget(self.pushButton)
self.textEdit = QtWidgets.QTextEdit(Form)
self.textEdit.setGeometry(QtCore.QRect(70, 100, 261, 371))
self.textEdit.setObjectName("textEdit")
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(70, 70, 261, 31))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_2.setObjectName("label_2")
self.horizontalLayout_2.addWidget(self.label_2)
self.label_3 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_3.setObjectName("label_3")
self.horizontalLayout_2.addWidget(self.label_3)
self.label_4 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_4.setObjectName("label_4")
self.horizontalLayout_2.addWidget(self.label_4)
self.label_5 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_5.setObjectName("label_5")
self.horizontalLayout_2.addWidget(self.label_5)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "顯示學生"))
    self.label.setText(_translate("Form", "顯示所有學生"))
    self.pushButton.setText(_translate("Form", "確定"))
    self.label_2.setText(_translate("Form", "序號"))
    self.label_3.setText(_translate("Form", "姓名"))
    self.label_4.setText(_translate("Form", "年齡"))
    self.label_5.setText(_translate("Form", "成績"))

class Ui_Form_addmenu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(150, 10, 131, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.gridLayoutWidget = QtWidgets.QWidget(Form)
self.gridLayoutWidget.setGeometry(QtCore.QRect(40, 70, 331, 321))
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
self.gridLayout.setContentsMargins(0, 0, 0, 0)
self.gridLayout.setObjectName("gridLayout")
self.label_3 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_3.setFont(font)
self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1)
self.label_4 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_4.setFont(font)
self.label_4.setObjectName("label_4")
self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)
self.label_2 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_2.setFont(font)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
self.lineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit.setObjectName("lineEdit")
self.gridLayout.addWidget(self.lineEdit, 0, 1, 1, 1)
self.lineEdit_2 = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit_2.setObjectName("lineEdit_2")
self.gridLayout.addWidget(self.lineEdit_2, 1, 1, 1, 1)
self.lineEdit_3 = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit_3.setObjectName("lineEdit_3")
self.gridLayout.addWidget(self.lineEdit_3, 2, 1, 1, 1)
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(70, 430, 261, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout.addWidget(self.pushButton)
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "添加學生"))
    self.label.setText(_translate("Form", "添加一個學生"))
    self.label_3.setText(_translate("Form", "姓名:"))
    self.label_4.setText(_translate("Form", "成績:"))
    self.label_2.setText(_translate("Form", "年齡:"))
    self.pushButton.setText(_translate("Form", "錄入"))
    self.pushButton_2.setText(_translate("Form", "返回"))

class Ui_Form_add0menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 181)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 20, 141, 51))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(20)
self.label.setFont(font)
self.label.setObjectName("label")
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(60, 100, 271, 41))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(14)
self.pushButton.setFont(font)
self.pushButton.setObjectName("pushButton")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "添加學生"))
    self.label.setText(_translate("Form", "添加成功!"))
    self.pushButton.setText(_translate("Form", "確定"))

class Ui_Form_del0menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 181)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 0, 147, 100))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(60, 80, 291, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout.addWidget(self.pushButton)
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "刪除方式"))
    self.label.setText(_translate("Form", "請選擇刪除方式"))
    self.pushButton.setText(_translate("Form", "按序號"))
    self.pushButton_2.setText(_translate("Form", "按姓名"))

class Ui_Form_del1menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(90, 0, 241, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(100, 440, 191, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)
self.pushButton_3 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_3.setObjectName("pushButton_3")
self.horizontalLayout.addWidget(self.pushButton_3)
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(107, 60, 181, 41))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_2.setObjectName("label_2")
self.horizontalLayout_2.addWidget(self.label_2)
self.lineEdit = QtWidgets.QLineEdit(self.horizontalLayoutWidget_2)
self.lineEdit.setObjectName("lineEdit")
self.horizontalLayout_2.addWidget(self.lineEdit)
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(107, 110, 181, 41))
self.pushButton.setObjectName("pushButton")
self.label_3 = QtWidgets.QLabel(Form)
self.label_3.setGeometry(QtCore.QRect(107, 160, 101, 21))
self.label_3.setObjectName("label_3")
self.textEdit = QtWidgets.QTextEdit(Form)
self.textEdit.setGeometry(QtCore.QRect(100, 190, 191, 241))
self.textEdit.setObjectName("textEdit")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "刪除學生(按序號)"))
    self.label.setText(_translate("Form", "刪除一個學生(按序號)"))
    self.pushButton_2.setText(_translate("Form", "刪除"))
    self.pushButton_3.setText(_translate("Form", "取消"))
    self.label_2.setText(_translate("Form", "請輸入該學生序號:"))
    self.pushButton.setText(_translate("Form", "確  定"))
    self.label_3.setText(_translate("Form", "該學生的信息如下"))

class Ui_Form_del2menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(100, 0, 241, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(100, 440, 218, 61))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)
self.pushButton_3 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_3.setObjectName("pushButton_3")
self.horizontalLayout.addWidget(self.pushButton_3)
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(107, 60, 191, 41))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_2.setObjectName("label_2")
self.horizontalLayout_2.addWidget(self.label_2)
self.lineEdit = QtWidgets.QLineEdit(self.horizontalLayoutWidget_2)
self.lineEdit.setObjectName("lineEdit")
self.horizontalLayout_2.addWidget(self.lineEdit)
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(107, 110, 201, 41))
self.pushButton.setObjectName("pushButton")
self.label_3 = QtWidgets.QLabel(Form)
self.label_3.setGeometry(QtCore.QRect(107, 160, 101, 21))
self.label_3.setObjectName("label_3")
self.textEdit = QtWidgets.QTextEdit(Form)
self.textEdit.setGeometry(QtCore.QRect(100, 190, 211, 241))
self.textEdit.setObjectName("textEdit")
self.label_4 = QtWidgets.QLabel(Form)
self.label_4.setGeometry(QtCore.QRect(90, 510, 331, 16))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(9)
self.label_4.setFont(font)
self.label_4.setObjectName("label_4")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "刪除學生(按姓名)"))
    self.label.setText(_translate("Form", "刪除一個學生(按姓名)"))
    self.pushButton_2.setText(_translate("Form", "全部刪除"))
    self.pushButton_3.setText(_translate("Form", "取消"))
    self.label_2.setText(_translate("Form", "請輸入該學生姓名:"))
    self.pushButton.setText(_translate("Form", "確  定"))
    self.label_3.setText(_translate("Form", "該學生的信息如下"))
    self.label_4.setText(_translate("Form", "#小提示:重名若想刪除其中某個請按序號刪除。"))

class Ui_Form_del3menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 181)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 20, 141, 51))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(20)
self.label.setFont(font)
self.label.setObjectName("label")
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(60, 100, 271, 41))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(14)
self.pushButton.setFont(font)
self.pushButton.setObjectName("pushButton")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "刪除學生"))
    self.label.setText(_translate("Form", "刪除成功!"))
    self.pushButton.setText(_translate("Form", "確定"))

class Ui_Form_find0menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 181)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 0, 147, 100))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(60, 80, 291, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout.addWidget(self.pushButton)
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "查找方式"))
    self.label.setText(_translate("Form", "請選擇查找方式"))
    self.pushButton.setText(_translate("Form", "按序號"))
    self.pushButton_2.setText(_translate("Form", "按姓名"))

class Ui_Form_find1menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(90, 10, 241, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(97, 70, 211, 41))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_2.setObjectName("label_2")
self.horizontalLayout_2.addWidget(self.label_2)
self.lineEdit = QtWidgets.QLineEdit(self.horizontalLayoutWidget_2)
self.lineEdit.setObjectName("lineEdit")
self.horizontalLayout_2.addWidget(self.lineEdit)
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(97, 120, 211, 41))
self.pushButton.setObjectName("pushButton")
self.label_3 = QtWidgets.QLabel(Form)
self.label_3.setGeometry(QtCore.QRect(97, 170, 101, 21))
self.label_3.setObjectName("label_3")
self.textEdit = QtWidgets.QTextEdit(Form)
self.textEdit.setGeometry(QtCore.QRect(90, 200, 221, 241))
self.textEdit.setObjectName("textEdit")
self.pushButton_2 = QtWidgets.QPushButton(Form)
self.pushButton_2.setGeometry(QtCore.QRect(90, 460, 221, 41))
self.pushButton_2.setObjectName("pushButton_2")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "查找學生(按序號)"))
    self.label.setText(_translate("Form", "查找一個學生(按序號)"))
    self.label_2.setText(_translate("Form", "請輸入該學生序號:"))
    self.pushButton.setText(_translate("Form", "確  定"))
    self.label_3.setText(_translate("Form", "該學生的信息如下"))
    self.pushButton_2.setText(_translate("Form", "返回"))

class Ui_Form_find2menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(90, 10, 241, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(97, 70, 211, 41))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_2.setObjectName("label_2")
self.horizontalLayout_2.addWidget(self.label_2)
self.lineEdit = QtWidgets.QLineEdit(self.horizontalLayoutWidget_2)
self.lineEdit.setObjectName("lineEdit")
self.horizontalLayout_2.addWidget(self.lineEdit)
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(97, 120, 211, 41))
self.pushButton.setObjectName("pushButton")
self.label_3 = QtWidgets.QLabel(Form)
self.label_3.setGeometry(QtCore.QRect(97, 170, 101, 21))
self.label_3.setObjectName("label_3")
self.textEdit = QtWidgets.QTextEdit(Form)
self.textEdit.setGeometry(QtCore.QRect(90, 200, 221, 241))
self.textEdit.setObjectName("textEdit")
self.pushButton_2 = QtWidgets.QPushButton(Form)
self.pushButton_2.setGeometry(QtCore.QRect(90, 460, 221, 41))
self.pushButton_2.setObjectName("pushButton_2")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "查找學生(按姓名)"))
    self.label.setText(_translate("Form", "查找一個學生(按姓名)"))
    self.label_2.setText(_translate("Form", "請輸入該學生姓名:"))
    self.pushButton.setText(_translate("Form", "確  定"))
    self.label_3.setText(_translate("Form", "該學生的信息如下"))
    self.pushButton_2.setText(_translate("Form", "返回"))

class Ui_Form_revise0menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 181)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 0, 147, 100))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(60, 80, 291, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout.addWidget(self.pushButton)
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "修改方式"))
    self.label.setText(_translate("Form", "請選擇修改方式"))
    self.pushButton.setText(_translate("Form", "按序號"))
    self.pushButton_2.setText(_translate("Form", "按姓名"))

class Ui_Form_revise1menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(90, 10, 241, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(60, 60, 291, 41))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_2.setObjectName("label_2")
self.horizontalLayout_2.addWidget(self.label_2)
self.lineEdit = QtWidgets.QLineEdit(self.horizontalLayoutWidget_2)
self.lineEdit.setObjectName("lineEdit")
self.horizontalLayout_2.addWidget(self.lineEdit)
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget_2)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout_2.addWidget(self.pushButton)
self.label_3 = QtWidgets.QLabel(Form)
self.label_3.setGeometry(QtCore.QRect(60, 110, 101, 21))
self.label_3.setObjectName("label_3")
self.textEdit = QtWidgets.QTextEdit(Form)
self.textEdit.setGeometry(QtCore.QRect(60, 140, 291, 101))
self.textEdit.setObjectName("textEdit")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(60, 240, 291, 51))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)
self.pushButton_3 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_3.setObjectName("pushButton_3")
self.horizontalLayout.addWidget(self.pushButton_3)
self.textEdit_2 = QtWidgets.QTextEdit(Form)
self.textEdit_2.setGeometry(QtCore.QRect(60, 340, 291, 111))
self.textEdit_2.setObjectName("textEdit_2")
self.pushButton_4 = QtWidgets.QPushButton(Form)
self.pushButton_4.setGeometry(QtCore.QRect(130, 470, 161, 41))
self.pushButton_4.setObjectName("pushButton_4")
self.horizontalLayoutWidget_3 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_3.setGeometry(QtCore.QRect(60, 300, 215, 31))
self.horizontalLayoutWidget_3.setObjectName("horizontalLayoutWidget_3")
self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_3)
self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
self.label_4 = QtWidgets.QLabel(self.horizontalLayoutWidget_3)
self.label_4.setObjectName("label_4")
self.horizontalLayout_3.addWidget(self.label_4)
self.pushButton_5 = QtWidgets.QPushButton(self.horizontalLayoutWidget_3)
self.pushButton_5.setObjectName("pushButton_5")
self.horizontalLayout_3.addWidget(self.pushButton_5)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "修改學生(按序號)"))
    self.label.setText(_translate("Form", "修改一個學生(按序號)"))
    self.label_2.setText(_translate("Form", "請輸入該學生序號:"))
    self.pushButton.setText(_translate("Form", "確  定"))
    self.label_3.setText(_translate("Form", "該學生的信息如下"))
    self.pushButton_2.setText(_translate("Form", "修改"))
    self.pushButton_3.setText(_translate("Form", "取消"))
    self.pushButton_4.setText(_translate("Form", "返   回"))
    self.label_4.setText(_translate("Form", "修改后該學生的信息如下"))
    self.pushButton_5.setText(_translate("Form", "顯示"))

class Ui_Form_renew1menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(120, 10, 201, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.gridLayoutWidget = QtWidgets.QWidget(Form)
self.gridLayoutWidget.setGeometry(QtCore.QRect(40, 70, 331, 351))
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
self.gridLayout.setContentsMargins(0, 0, 0, 0)
self.gridLayout.setObjectName("gridLayout")
self.lineEdit_3 = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit_3.setObjectName("lineEdit_3")
self.gridLayout.addWidget(self.lineEdit_3, 2, 1, 1, 1)
self.lineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit.setObjectName("lineEdit")
self.gridLayout.addWidget(self.lineEdit, 0, 1, 1, 1)
self.label_3 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_3.setFont(font)
self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1)
self.label_2 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_2.setFont(font)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
self.label_4 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_4.setFont(font)
self.label_4.setObjectName("label_4")
self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)
self.lineEdit_2 = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit_2.setObjectName("lineEdit_2")
self.gridLayout.addWidget(self.lineEdit_2, 1, 1, 1, 1)
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(70, 430, 261, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout.addWidget(self.pushButton)
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "修改中(按序號)"))
    self.label.setText(_translate("Form", "修改面板(按序號)"))
    self.label_3.setText(_translate("Form", "將姓名修改為:"))
    self.label_2.setText(_translate("Form", "將年齡修改為:"))
    self.label_4.setText(_translate("Form", "將成績修改為:"))
    self.pushButton.setText(_translate("Form", "確定"))
    self.pushButton_2.setText(_translate("Form", "取消"))

class Ui_Form_revise2menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(90, 10, 241, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(60, 60, 291, 41))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.label_2 = QtWidgets.QLabel(self.horizontalLayoutWidget_2)
self.label_2.setObjectName("label_2")
self.horizontalLayout_2.addWidget(self.label_2)
self.lineEdit = QtWidgets.QLineEdit(self.horizontalLayoutWidget_2)
self.lineEdit.setObjectName("lineEdit")
self.horizontalLayout_2.addWidget(self.lineEdit)
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget_2)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout_2.addWidget(self.pushButton)
self.label_3 = QtWidgets.QLabel(Form)
self.label_3.setGeometry(QtCore.QRect(60, 110, 101, 21))
self.label_3.setObjectName("label_3")
self.textEdit = QtWidgets.QTextEdit(Form)
self.textEdit.setGeometry(QtCore.QRect(60, 140, 291, 101))
self.textEdit.setObjectName("textEdit")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(60, 240, 291, 51))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)
self.pushButton_3 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_3.setObjectName("pushButton_3")
self.horizontalLayout.addWidget(self.pushButton_3)
self.textEdit_2 = QtWidgets.QTextEdit(Form)
self.textEdit_2.setGeometry(QtCore.QRect(60, 340, 291, 111))
self.textEdit_2.setObjectName("textEdit_2")
self.pushButton_4 = QtWidgets.QPushButton(Form)
self.pushButton_4.setGeometry(QtCore.QRect(130, 470, 161, 41))
self.pushButton_4.setObjectName("pushButton_4")
self.horizontalLayoutWidget_3 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_3.setGeometry(QtCore.QRect(60, 300, 215, 31))
self.horizontalLayoutWidget_3.setObjectName("horizontalLayoutWidget_3")
self.horizontalLayout_3 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_3)
self.horizontalLayout_3.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_3.setObjectName("horizontalLayout_3")
self.label_4 = QtWidgets.QLabel(self.horizontalLayoutWidget_3)
self.label_4.setObjectName("label_4")
self.horizontalLayout_3.addWidget(self.label_4)
self.pushButton_5 = QtWidgets.QPushButton(self.horizontalLayoutWidget_3)
self.pushButton_5.setObjectName("pushButton_5")
self.horizontalLayout_3.addWidget(self.pushButton_5)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "修改學生(按姓名)"))
    self.label.setText(_translate("Form", "修改一個學生(按姓名)"))
    self.label_2.setText(_translate("Form", "請輸入該學生姓名:"))
    self.pushButton.setText(_translate("Form", "確  定"))
    self.label_3.setText(_translate("Form", "該學生的信息如下"))
    self.pushButton_2.setText(_translate("Form", "修改"))
    self.pushButton_3.setText(_translate("Form", "取消"))
    self.pushButton_4.setText(_translate("Form", "返   回"))
    self.label_4.setText(_translate("Form", "修改后該學生的信息如下"))
    self.pushButton_5.setText(_translate("Form", "顯示"))

class Ui_Form_renew2menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(120, 10, 201, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.gridLayoutWidget = QtWidgets.QWidget(Form)
self.gridLayoutWidget.setGeometry(QtCore.QRect(40, 70, 331, 351))
self.gridLayoutWidget.setObjectName("gridLayoutWidget")
self.gridLayout = QtWidgets.QGridLayout(self.gridLayoutWidget)
self.gridLayout.setContentsMargins(0, 0, 0, 0)
self.gridLayout.setObjectName("gridLayout")
self.lineEdit_3 = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit_3.setObjectName("lineEdit_3")
self.gridLayout.addWidget(self.lineEdit_3, 2, 1, 1, 1)
self.lineEdit = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit.setObjectName("lineEdit")
self.gridLayout.addWidget(self.lineEdit, 0, 1, 1, 1)
self.label_3 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_3.setFont(font)
self.label_3.setObjectName("label_3")
self.gridLayout.addWidget(self.label_3, 0, 0, 1, 1)
self.label_2 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_2.setFont(font)
self.label_2.setObjectName("label_2")
self.gridLayout.addWidget(self.label_2, 1, 0, 1, 1)
self.label_4 = QtWidgets.QLabel(self.gridLayoutWidget)
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(12)
self.label_4.setFont(font)
self.label_4.setObjectName("label_4")
self.gridLayout.addWidget(self.label_4, 2, 0, 1, 1)
self.lineEdit_2 = QtWidgets.QLineEdit(self.gridLayoutWidget)
self.lineEdit_2.setObjectName("lineEdit_2")
self.gridLayout.addWidget(self.lineEdit_2, 1, 1, 1, 1)
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(70, 430, 261, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout.addWidget(self.pushButton)
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "修改中(按姓名)"))
    self.label.setText(_translate("Form", "修改面板(按姓名)"))
    self.label_3.setText(_translate("Form", "將姓名修改為:"))
    self.label_2.setText(_translate("Form", "將年齡修改為:"))
    self.label_4.setText(_translate("Form", "將成績修改為:"))
    self.pushButton.setText(_translate("Form", "確定"))
    self.pushButton_2.setText(_translate("Form", "取消"))

class Ui_Form_revise3menu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 181)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(140, 20, 141, 51))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(20)
self.label.setFont(font)
self.label.setObjectName("label")
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(60, 100, 271, 41))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(14)
self.pushButton.setFont(font)
self.pushButton.setObjectName("pushButton")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "修改學生"))
    self.label.setText(_translate("Form", "修改成功!"))
    self.pushButton.setText(_translate("Form", "確定"))

class Ui_Form_sortmenu(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(522, 535)
self.label = QtWidgets.QLabel(Form)
self.label.setGeometry(QtCore.QRect(190, 10, 161, 61))
font = QtGui.QFont()
font.setFamily("Agency FB")
font.setPointSize(16)
self.label.setFont(font)
self.label.setObjectName("label")
self.horizontalLayoutWidget = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget.setGeometry(QtCore.QRect(70, 60, 381, 80))
self.horizontalLayoutWidget.setObjectName("horizontalLayoutWidget")
self.horizontalLayout = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget)
self.horizontalLayout.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout.setObjectName("horizontalLayout")
self.pushButton = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton.setObjectName("pushButton")
self.horizontalLayout.addWidget(self.pushButton)
self.pushButton_2 = QtWidgets.QPushButton(self.horizontalLayoutWidget)
self.pushButton_2.setObjectName("pushButton_2")
self.horizontalLayout.addWidget(self.pushButton_2)
self.horizontalLayoutWidget_2 = QtWidgets.QWidget(Form)
self.horizontalLayoutWidget_2.setGeometry(QtCore.QRect(60, 140, 401, 281))
self.horizontalLayoutWidget_2.setObjectName("horizontalLayoutWidget_2")
self.horizontalLayout_2 = QtWidgets.QHBoxLayout(self.horizontalLayoutWidget_2)
self.horizontalLayout_2.setContentsMargins(0, 0, 0, 0)
self.horizontalLayout_2.setObjectName("horizontalLayout_2")
self.textEdit = QtWidgets.QTextEdit(self.horizontalLayoutWidget_2)
self.textEdit.setObjectName("textEdit")
self.horizontalLayout_2.addWidget(self.textEdit)
self.textEdit_2 = QtWidgets.QTextEdit(self.horizontalLayoutWidget_2)
self.textEdit_2.setObjectName("textEdit_2")
self.horizontalLayout_2.addWidget(self.textEdit_2)
self.pushButton_3 = QtWidgets.QPushButton(Form)
self.pushButton_3.setGeometry(QtCore.QRect(200, 450, 121, 41))
self.pushButton_3.setObjectName("pushButton_3")

    self.retranslateUi(Form)
    QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
    _translate = QtCore.QCoreApplication.translate
    Form.setWindowTitle(_translate("Form", "排名"))
    self.label.setText(_translate("Form", "請選擇排名方式"))
    self.pushButton.setText(_translate("Form", "成績降序"))
    self.pushButton_2.setText(_translate("Form", "成績升序"))
    self.pushButton_3.setText(_translate("Form", "確  定"))

class Showmenu(QtWidgets.QWidget,Ui_Form_showmenu):
def init(self):
super().init()
self.setupUi(self)
if len(studentlist) == 1:
self.textEdit.setPlainText("空無一人!")
else:
for i in range(1,len(studentlist)):
self.textEdit.insertPlainText(str(studentlist[i][0]))
self.textEdit.insertPlainText(' '9)
self.textEdit.insertPlainText(str(studentlist[i][1]))
self.textEdit.insertPlainText(' '
7)
self.textEdit.insertPlainText(str(studentlist[i][2]))
self.textEdit.insertPlainText(' '*8)
self.textEdit.insertPlainText(str(studentlist[i][3]))
self.textEdit.insertPlainText('\n')
self.pushButton.clicked.connect(self.close)
class Addmenu(QtWidgets.QWidget,Ui_Form_addmenu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.add)
self.pushButton.clicked.connect(self.add0)
self.pushButton_2.clicked.connect(self.close)
def add(self):
name = self.lineEdit.text()
age = self.lineEdit_2.text()
score = self.lineEdit_3.text()
id = studentlist[len(studentlist) - 1][0] + 1
studentlist.append([id, name, age, score])
self.lineEdit.clear()
self.lineEdit_2.clear()
self.lineEdit_3.clear()
def add0(self):
self.sadd = Add0menu()
self.sadd.show()
class Add0menu(QtWidgets.QWidget,Ui_Form_add0menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.close)
class Del0menu(QtWidgets.QWidget,Ui_Form_del0menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.del1menu)
self.pushButton.clicked.connect(self.close)
self.pushButton_2.clicked.connect(self.del2menu)
self.pushButton_2.clicked.connect(self.close)
def del1menu(self):
self.sdel1 = Del1menu()
self.sdel1.show()
def del2menu(self):
self.sdel1 = Del2menu()
self.sdel1.show()
class Del1menu(QtWidgets.QWidget,Ui_Form_del1menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.fbyid)
self.pushButton_2.clicked.connect(self.dbyid)
self.pushButton_2.clicked.connect(self.del3)
self.pushButton_3.clicked.connect(self.close)
def fbyid(self):
did = int(self.lineEdit.text())
for i in range(1, len(studentlist)):
if studentlist[i][0] == did:
findlist.append(i)
dellist.append(i)
if findlist == []:
self.textEdit.setPlainText('查無此人!')
else:
self.textEdit.clear()
i = findlist[0]
self.textEdit.insertPlainText("序號:")
self.textEdit.insertPlainText(str(studentlist[i][0]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("姓名:")
self.textEdit.insertPlainText(str(studentlist[i][1]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("年齡:")
self.textEdit.insertPlainText(str(studentlist[i][2]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("成績:")
self.textEdit.insertPlainText(str(studentlist[i][3]))
findlist.clear()
def dbyid(self):
del studentlist[dellist[0]]
dellist.clear()
self.lineEdit.clear()
self.textEdit.clear()
def del3(self):
self.sdel3 = Del3menu()
self.sdel3.show()
class Del2menu(QtWidgets.QWidget,Ui_Form_del2menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.fbyname)
self.pushButton_2.clicked.connect(self.dbyname)
self.pushButton_2.clicked.connect(self.del3)
self.pushButton_3.clicked.connect(self.close)
def fbyname(self):
dname = str(self.lineEdit.text())
for i in range(1, len(studentlist)):
if studentlist[i][1] == dname:
findlist.append(i)
dellist.append(i)
if findlist == []:
self.textEdit.setPlainText('查無此人!')
else:
self.textEdit.clear()
for i in findlist[::-1]:
self.textEdit.insertPlainText("序號:")
self.textEdit.insertPlainText(str(studentlist[i][0]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("姓名:")
self.textEdit.insertPlainText(str(studentlist[i][1]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("年齡:")
self.textEdit.insertPlainText(str(studentlist[i][2]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("成績:")
self.textEdit.insertPlainText(str(studentlist[i][3]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText('\n')
findlist.clear()
def dbyname(self):
for i in dellist[::-1]:
del studentlist[i]
dellist.clear()
self.lineEdit.clear()
self.textEdit.clear()
def del3(self):
self.sdel3 = Del3menu()
self.sdel3.show()
class Del3menu(QtWidgets.QWidget,Ui_Form_del3menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.close)
class Find0menu(QtWidgets.QWidget,Ui_Form_find0menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.find1menu)
self.pushButton.clicked.connect(self.close)
self.pushButton_2.clicked.connect(self.find2menu)
self.pushButton_2.clicked.connect(self.close)
def find1menu(self):
self.sfind1 = Find1menu()
self.sfind1.show()
def find2menu(self):
self.sfind2 = Find2menu()
self.sfind2.show()
class Find1menu(QtWidgets.QWidget,Ui_Form_find1menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.fbyid)
self.pushButton_2.clicked.connect(self.close)
def fbyid(self):
fid = int(self.lineEdit.text())
for i in range(1, len(studentlist)):
if studentlist[i][0] == fid:
findlist.append(i)
if findlist == []:
self.textEdit.setPlainText('查無此人!')
else:
self.textEdit.clear()
i = findlist[0]
self.textEdit.insertPlainText("序號:")
self.textEdit.insertPlainText(str(studentlist[i][0]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("姓名:")
self.textEdit.insertPlainText(str(studentlist[i][1]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("年齡:")
self.textEdit.insertPlainText(str(studentlist[i][2]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("成績:")
self.textEdit.insertPlainText(str(studentlist[i][3]))
findlist.clear()
class Find2menu(QtWidgets.QWidget,Ui_Form_find2menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.fbyname)
self.pushButton_2.clicked.connect(self.close)
def fbyname(self):
fname = str(self.lineEdit.text())
for i in range(1, len(studentlist)):
if studentlist[i][1] == fname:
findlist.append(i)
if findlist == []:
self.textEdit.setPlainText('查無此人!')
else:
self.textEdit.clear()
for i in findlist[:]:
self.textEdit.insertPlainText("序號:")
self.textEdit.insertPlainText(str(studentlist[i][0]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("姓名:")
self.textEdit.insertPlainText(str(studentlist[i][1]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("年齡:")
self.textEdit.insertPlainText(str(studentlist[i][2]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("成績:")
self.textEdit.insertPlainText(str(studentlist[i][3]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText('\n')
findlist.clear()
class Revise0menu(QtWidgets.QWidget,Ui_Form_revise0menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.revise1menu)
self.pushButton.clicked.connect(self.close)
self.pushButton_2.clicked.connect(self.revise2menu)
self.pushButton_2.clicked.connect(self.close)
def revise1menu(self):
self.sre1 = Revise1menu()
self.sre1.show()
def revise2menu(self):
self.sre2 = Revise2menu()
self.sre2.show()
class Revise1menu(QtWidgets.QWidget,Ui_Form_revise1menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.fbyid)
self.pushButton_2.clicked.connect(self.renewmenu)
self.pushButton_3.clicked.connect(self.close)
self.pushButton_4.clicked.connect(self.close)
self.pushButton_5.clicked.connect(self.reshow)
def fbyid(self):
renewlist.clear()
fid = int(self.lineEdit.text())
for i in range(1, len(studentlist)):
if studentlist[i][0] == fid:
findlist.append(i)
renewlist.append(i)
if findlist == []:
self.textEdit.setPlainText('查無此人!')
else:
self.textEdit.clear()
i = findlist[0]
self.textEdit.insertPlainText("序號:")
self.textEdit.insertPlainText(str(studentlist[i][0]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("姓名:")
self.textEdit.insertPlainText(str(studentlist[i][1]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("年齡:")
self.textEdit.insertPlainText(str(studentlist[i][2]))
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText("成績:")
self.textEdit.insertPlainText(str(studentlist[i][3]))
self.textEdit_2.clear()
findlist.clear()
def renewmenu(self):
self.srn1 = Renew1menu()
self.srn1.show()
def reshow(self):
self.textEdit_2.clear()
i = renewlist[-1]
self.textEdit_2.insertPlainText("序號:")
self.textEdit_2.insertPlainText(str(studentlist[i][0]))
self.textEdit_2.insertPlainText('\n')
self.textEdit_2.insertPlainText("姓名:")
self.textEdit_2.insertPlainText(str(studentlist[i][1]))
self.textEdit_2.insertPlainText('\n')
self.textEdit_2.insertPlainText("年齡:")
self.textEdit_2.insertPlainText(str(studentlist[i][2]))
self.textEdit_2.insertPlainText('\n')
self.textEdit_2.insertPlainText("成績:")
self.textEdit_2.insertPlainText(str(studentlist[i][3]))
class Renew1menu(QtWidgets.QWidget,Ui_Form_renew1menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.renew)
self.pushButton.clicked.connect(self.re3)
self.pushButton.clicked.connect(self.close)
self.pushButton_2.clicked.connect(self.close)
def renew(self):
i = renewlist[-1]
studentlist[i][1] = self.lineEdit.text()
studentlist[i][2] = self.lineEdit_2.text()
studentlist[i][3] = self.lineEdit_3.text()
def re3(self):
self.sre3 = Revise3menu()
self.sre3.show()
class Revise2menu(QtWidgets.QWidget,Ui_Form_revise2menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.fbyname)
self.pushButton_2.clicked.connect(self.renewmenu)
self.pushButton_3.clicked.connect(self.close)
self.pushButton_4.clicked.connect(self.close)
self.pushButton_5.clicked.connect(self.reshow)
def fbyname(self):
renewlist.clear()
fname = str(self.lineEdit.text())
for i in range(1, len(studentlist)):
if studentlist[i][1] == fname:
findlist.append(i)
renewlist.append(i)
if findlist == []:
self.textEdit.setPlainText('查無此人!')
else:
self.textEdit.clear()
self.textEdit.insertPlainText("序號")
self.textEdit.insertPlainText(' ' * 7)
self.textEdit.insertPlainText("姓名")
self.textEdit.insertPlainText(' ' * 7)
self.textEdit.insertPlainText("年齡")
self.textEdit.insertPlainText(' ' * 7)
self.textEdit.insertPlainText("成績")
for i in findlist[:]:
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText(str(studentlist[i][0]))
self.textEdit.insertPlainText(' ' * 9)
self.textEdit.insertPlainText(str(studentlist[i][1]))
self.textEdit.insertPlainText(' ' * 7)
self.textEdit.insertPlainText(str(studentlist[i][2]))
self.textEdit.insertPlainText(' ' * 8)
self.textEdit.insertPlainText(str(studentlist[i][3]))
self.textEdit_2.clear()
findlist.clear()
def renewmenu(self):
if len(renewlist) == 1:
self.srn2 = Renew2menu()
self.srn2.show()
else:
self.textEdit_2.setPlainText("暫不支持同名修改!請嘗試按序號修改!")
renewlist.clear()
def reshow(self):
if len(renewlist) == 1:
self.textEdit_2.clear()
i = renewlist[-1]
self.textEdit_2.insertPlainText("序號:")
self.textEdit_2.insertPlainText(str(studentlist[i][0]))
self.textEdit_2.insertPlainText('\n')
self.textEdit_2.insertPlainText("姓名:")
self.textEdit_2.insertPlainText(str(studentlist[i][1]))
self.textEdit_2.insertPlainText('\n')
self.textEdit_2.insertPlainText("年齡:")
self.textEdit_2.insertPlainText(str(studentlist[i][2]))
self.textEdit_2.insertPlainText('\n')
self.textEdit_2.insertPlainText("成績:")
self.textEdit_2.insertPlainText(str(studentlist[i][3]))
else:
self.textEdit_2.setPlainText("錯誤!")
class Renew2menu(QtWidgets.QWidget,Ui_Form_renew2menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.renew)
self.pushButton.clicked.connect(self.re3)
self.pushButton.clicked.connect(self.close)
self.pushButton_2.clicked.connect(self.close)
def renew(self):
i = renewlist[0]
studentlist[i][1] = self.lineEdit.text()
studentlist[i][2] = self.lineEdit_2.text()
studentlist[i][3] = self.lineEdit_3.text()
def re3(self):
self.sre3 = Revise3menu()
self.sre3.show()
class Revise3menu(QtWidgets.QWidget,Ui_Form_revise3menu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.close)
class Sortmenu(QtWidgets.QWidget,Ui_Form_sortmenu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.down)
self.pushButton_2.clicked.connect(self.up)
self.pushButton_3.clicked.connect(self.close)
def down(self):
downlist = sorted(studentlist[1:], key=lambda x: x[3], reverse=True)
self.textEdit.clear()
self.textEdit.insertPlainText("序號")
self.textEdit.insertPlainText(' ' * 2)
self.textEdit.insertPlainText("姓名")
self.textEdit.insertPlainText(' ' * 2)
self.textEdit.insertPlainText("年齡")
self.textEdit.insertPlainText(' ' * 2)
self.textEdit.insertPlainText("成績")
for i in range(len(downlist)):
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText('\n')
self.textEdit.insertPlainText(str(downlist[i][0]))
self.textEdit.insertPlainText(' ' * 4)
self.textEdit.insertPlainText(str(downlist[i][1]))
self.textEdit.insertPlainText(' ' * 2)
self.textEdit.insertPlainText(str(downlist[i][2]))
self.textEdit.insertPlainText(' ' * 3)
self.textEdit.insertPlainText(str(downlist[i][3]))
def up(self):
downlist = sorted(studentlist[1:], key=lambda x: x[3])
self.textEdit_2.clear()
self.textEdit_2.insertPlainText("序號")
self.textEdit_2.insertPlainText(' ' * 2)
self.textEdit_2.insertPlainText("姓名")
self.textEdit_2.insertPlainText(' ' * 2)
self.textEdit_2.insertPlainText("年齡")
self.textEdit_2.insertPlainText(' ' * 2)
self.textEdit_2.insertPlainText("成績")
for i in range(len(downlist)):
self.textEdit_2.insertPlainText('\n')
self.textEdit_2.insertPlainText('\n')
self.textEdit_2.insertPlainText(str(downlist[i][0]))
self.textEdit_2.insertPlainText(' ' * 4)
self.textEdit_2.insertPlainText(str(downlist[i][1]))
self.textEdit_2.insertPlainText(' ' * 2)
self.textEdit_2.insertPlainText(str(downlist[i][2]))
self.textEdit_2.insertPlainText(' ' * 3)
self.textEdit_2.insertPlainText(str(downlist[i][3]))

class Mainmenu(QtWidgets.QWidget,Ui_Form_mainmenu):
def init(self):
super().init()
self.setupUi(self)
self.pushButton.clicked.connect(self.showmenu)
self.pushButton_2.clicked.connect(self.addmenu)
self.pushButton_3.clicked.connect(self.del0menu)
self.pushButton_4.clicked.connect(self.find0menu)
self.pushButton_5.clicked.connect(self.revise0menu)
self.pushButton_6.clicked.connect(self.sortmenu)
self.pushButton_7.clicked.connect(self.close)
def showmenu(self):
self.sshow = Showmenu()
self.sshow.show()
def addmenu(self):
self.sadd = Addmenu()
self.sadd.show()
def del0menu(self):
self.sdel0 = Del0menu()
self.sdel0.show()
def find0menu(self):
self.sfind0 = Find0menu()
self.sfind0.show()
def revise0menu(self):
self.sre0 = Revise0menu()
self.sre0.show()
def sortmenu(self):
self.ssort = Sortmenu()
self.ssort.show()

if name == "main":
QtCore.QCoreApplication.setAttribute(QtCore.Qt.AA_EnableHighDpiScaling)
app = QtWidgets.QApplication(sys.argv)
main = Mainmenu()
main.show()
sys.exit(app.exec_())

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM