[GPA Check] 입력 기능 구현

Updated:

입력 기능 구현

[GPA Check] 출력 함수 정의 및 정리 에서 입력기능이 힘들 것 같다고 했는데…

역시 엄청 힘들었다..

심지어 입력기능을 전부 구현한 건 아니고 등급 선택 후 전부 읽어오는 것 까지 완성했다.

출력 함수를 조금 가져와서 똑같이 출력을 하고, 등급 위치에 콤보박스를 넣어 주었다.

등급 위치에 콤보박스를 넣어주는 과정이 진짜 힘들었다..

학기 별 수강한 과목이 다르기 때문에 앞서 가져온 학기 별 수강한 과목 수를 가지고 반복문을 돌렸다.

box_list 는 이 함수에서도 쓰이고 나중에 구현 할 함수에서도 쓰여 전역변수로 선언했다.

box_list = list()

  	def init_combo_box(self, my_result):
        y = 89

        for cur in my_result:
            cur = QComboBox(self)
            cur.addItem('A+')
            cur.addItem('A0')
            cur.addItem('B+')
            cur.addItem('B0')
            cur.addItem('C+')
            cur.addItem('C0')
            cur.addItem('D+')
            cur.addItem('D0')
            cur.addItem('F')
            cur.addItem('FA')
            cur.addItem('P')
            cur.addItem('NP')
            cur.move(900, y)
            cur.setFixedSize(60, 60)
            cur.show()
            box_list.append(cur)
            y += 32

        insert_btn = QPushButton(self)
        insert_btn.setText('입력')
        insert_btn.setFixedSize(60, 30)
        insert_btn.move(900, y + 30)
        insert_btn.show()
        insert_btn.clicked.connect(self.test)

이렇게 각 과목 별 콤보박스를 만들어 자신의 등급을 선택 한 뒤, 입력 버튼을 누르게 되면 test 함수를 실행한다.

우선 각 등급을 잘 가져오나 확인을 해보기 위해 선택한 등급을 출력하도록 해보았는데 잘 가져온다 !

    def test(self):
        for cur in box_list:
            print(cur.currentText())

이제 가져온 등급을 다시 데이터베이스에 저장해주는 함수를 만들면 입력 기능도 얼추 완성 될 것 같다.

말이 쉽지 엄청난 고생이 예상된다.. 😭


아 그리고 입력 기능도 학점조회와 똑같이 단축키와 아이콘을 만들어 주었다 !

학점조회 단축키는 command + 1 ~ 5 이고 성적입력 단축키는 option + 1 ~ 5 로 만들어 두었다.


Categories:

Updated:

Leave a comment