더북(TheBook)

[정답 확인] 버튼(a_btn)에 commandcheck_answer() 함수를 연결했습니다. 기존의 check_answer() 함수는 정답을 계산해 동적변수 answer에 넣는 함수였죠. 여기서는 콤보박스의 값을 읽어와 정답과 비교하는 함수로 바꿨습니다. 콤보박스의 값은 a_combo.get()으로 읽어오는데, 이때 유의할 점이 있습니다. 읽어온 값은 문자열로 인식되기 때문에 정수형 정답(num1 * num2)과 비교하려면 int()로 감싸서 정수형으로 바꿔야 합니다. 그리고 이 값을 정답과 비교해 일치하는 경우에는 showinfo()를, 일치하지 않는 경우에는 showerror()를 실행하도록 조건문을 작성했습니다. 함수 내부에 있던 selection = []는 프로그램 전체에서 사용하므로 전역변수 정의 부분으로 올렸습니다. 정답도 선택하고 오답도 선택하며 메시지박스가 잘 뜨는지 확인해 보세요.

이제 그럴듯한 구구단 프로그램이 됐습니다. 일부 위젯만 알아봤지만, ‘사용자 - 화면 - 코드’ 간의 흐름을 이해한다면 다른 위젯도 사용하기 어렵지 않을 겁니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.