Skip to content

Latest commit

 

History

History
44 lines (40 loc) · 2.77 KB

211201.md

File metadata and controls

44 lines (40 loc) · 2.77 KB

Day 59

Riot Open API 사용

project repository

오늘은 레이아웃의 일부 수정과 게임 상세 정보를 볼 수 있도록 만들었다.

def display_game_detail(self): # 숙련도 확인하고 행을 선택하면 그에 해당하는 경기 데이터를 출력하는 버그가 있음
    # game_detail_data = {match_id : {닉네임 : {Champion_Level, champName, kills, deaths, assists, KDA, Dealt_damage, CS, match_result, visionScore, summonerLevel, goldEarned}}}
    column_headers = ['닉네임', '레벨','챔피언','챔레벨','킬', '데스','어시','KDA','피해량','cs','시야점수','골드']
    self.DetailTable.setRowCount(10)
    self.DetailTable.setColumnCount(len(column_headers))
    self.DetailTable.setHorizontalHeaderLabels(column_headers)

    cur_match = self.l.match_list[self.ResultTable.currentRow()]
    temp_list = [0 for i in range(len(column_headers))]
    row = 0
    for i in self.l.game_detail_data[cur_match]:
        temp_list[0] = i
        temp_list[1] = self.l.game_detail_data[cur_match][i]['summonerLevel']
        temp_list[2] = self.l.game_detail_data[cur_match][i]['champName']
        temp_list[3] = self.l.game_detail_data[cur_match][i]['Champion_Level']
        temp_list[4] = self.l.game_detail_data[cur_match][i]['kills']
        temp_list[5] = self.l.game_detail_data[cur_match][i]['deaths']
        temp_list[6] = self.l.game_detail_data[cur_match][i]['assists']
        temp_list[7] = self.l.game_detail_data[cur_match][i]['KDA']
        temp_list[8] = self.l.game_detail_data[cur_match][i]['Dealt_damage']
        temp_list[9] = self.l.game_detail_data[cur_match][i]['CS']
        temp_list[10] = self.l.game_detail_data[cur_match][i]['visionScore']
        temp_list[11] = self.l.game_detail_data[cur_match][i]['goldEarned']

        for k, v in enumerate(temp_list):
            self.DetailTable.setItem(row, k, QTableWidgetItem(str(v)))
            if self.l.game_detail_data[cur_match][i]['match_result']: # 표의 색상 처리
                self.DetailTable.item(row, k).setBackground(QColor(135,206,235))
            else:
                self.DetailTable.item(row, k).setBackground(QColor(240,128,128))
        row += 1
    self.DetailTable.horizontalHeader().setSectionResizeMode(QHeaderView.Stretch)   # column 너비 조정
    self.DetailTable.resizeRowsToContents()

이 함수는 cellClicked 이벤트와 연결해서 클릭한 행의 경기 데이터를 보여준다.

일단 오늘 작업하면서 느낀 점은 불필요하게 매치 정보에 대한 것을 너무 쪼개 놓은 것 같은 느낌이 들었다. 이에 대해서는 조금 더 생각해 봐야할 것 같다.
추가로 UI의 개편과 최종 목적에 대해 확실히 생각하고 마무리를 지어야 할 것 같다.