▶Text 생성하기
제대로 함수 계산이 되는지 확인하기 위해 출력 창을 만들어야 했습니다.
원래 상호평가를 엑셀 파일로 제출해야 하기 때문에
엑셀로 붙여 넣기를 할 수 있는 형식으로 하려고 했지만 좀 더 공부가 필요하고,
용량 문제 등 그만큼 효율성이 많이 올라가지 않는다고 판단, 다른 방식을 생각해야 했습니다.
제가 선택한 방식은 메모장과 같은 txt 방식입니다.
label로도 결과를 나타낼 수 있지만 결과 텍스트를 복사 붙여 넣기를 하기 위해서입니다.
방식은 기존 label과 button을 만드는 방법과 크게 다르지 않습니다.
txt = Text(
wd,
width=55,
height=30,
font=('바탕체', 10)
)
위 같은 방식으로 Lebel과 Button 대신에 Text만 써주면 됩니다.
txt.place(
x=285,
y=170
)
Lebel, Button과 마찬가지로 x, y좌표를 이용하는 place()로 배치해주었습니다.
Text를 만들었으니 함수로 계산한 내용이 나오고 또 지울 수 있게 해야 합니다.
생성한 Text 뒤에 .insert()를 붙여서 내용을 입력해줍니다.
txt.insert("1.0","내용")
앞에 "1.0"은 첫 번째 줄 첫 번째 문자를 의미합니다.
내용을 지우는 방법은 뒤에 .delete()를 붙여서 지울 수가 있습니다.
def reset():
txt.delete("1.0", "end")
entry.delete(0, len(entry.get()))
delete 메소드를 이용하여 reset 함수를 만들어 보았습니다.
insert에는 시작 위치와 넣을 문자열을 넣어줬다면,
delete에는 시작 위치와 끝나는 위치를 입력해줍니다.
Text의 경우에는 처음부터 끝까지 지울 것이기 때문에 끝나는 위치에 end를 넣어주었습니다.
Entry의 경우에는 1줄로만 되어있으므로 0으로 시작하여,
len함수를 이용해서 Entry로 입력받은 문자열의 길이를 구하여 끝나는 위치로 설정해주었습니다.
insert로 문자열을 넣을 때 개인적으로 배운 것은
문자열 중간에 변수를 넣을 때 "+변수+" 이런 식으로 중간에 넣어주어야 한다는 것과
작은따옴표 또는 큰따옴표를 3번 입력하고 문자열을 입력하면,
엔터키로 쉽게 줄 바꿈을 사용하여 문자열을 입력할 수 있던 것이었습니다.
다음에 또 사용할 일이 있을 경우를 대비해 기억해둬야겠습니다.
▶버튼에 함수 넣기
지난 포스팅에서 Entry로 입력값을 받아보았습니다.
버튼을 누르면 Entry로 받은 값과 기존에 만들어뒀던 함수로 계산을 하기 위해서
버튼에 커맨드를 적용시켜 보도록 하겠습니다.
ResetBtn = Button(
text="리셋",
font=('바탕체',15, 'bold'),
width=10,
height=2,
command= "함수 이름"
)
command = 에 만들어 뒀던 함수 이름을 넣어 줍니다.
위에서 reset 함수를 만들었기 때문에 command= "reset"을 해준다면
버튼을 눌렀을 때 위에서 만들었던 reset함수를 사용할 수 있습니다.
상호평가 프로그램 만들기의 끝이 얼마 남지 않았습니다.
이런 글은 읽는 사람이 거의 없다는 것을 알지만 복습과 블로그를 포스팅에 대하여
조금이나 배웠다는 점에서 의미가 있는 것 같습니다.
마지막까지 해봐야겠네요
'프로그래밍 독학 > python' 카테고리의 다른 글
[python] 파이썬 pyinstall 실행 파일(exe) 만들기 (0) | 2022.04.08 |
---|---|
[python] 파이썬 GUI tkinter 스크롤바 만들기 상호평가 프로그램 만들기(8) (0) | 2022.04.08 |
[python] 파이썬 GUI tkinter Entry 입력값 받기, 메시지박스, return 상호평가 프로그램 만들기(6) (0) | 2022.04.06 |
[python] 파이썬 GUI tkinter 라벨, Entry, 버튼 상호평가 프로그램 만들기(5) (0) | 2022.04.04 |
[python] 파이썬 GUI tkinter geometry 창 만들기 상호평가 프로그램 만들기(4) (0) | 2022.03.31 |
댓글