다섯번째는 리스트박스 입니다.
코드는 아래와 같습니다.

listbox()를 통해 리스트 박스를 생성합니다.
selectmode는 리스트의 항복 선택 방법을 정하는 함수로
매개 변수가 있는데
extended: 다중 선택, 마우스 드래그나 쉬프트키 + 방향키 이동으로 선택
browse : 단일 선택, 방향키 이동 시 선택
single : 단일 선택, 방향키 이동 후 스페이스바로 선택
multiple : 다중 선택, 마우스 클릭이나 방향키 이동 후 스페이스바로 선택
이렇게 4종류가 있습니다.
그중 extended를 선택하였고
딸기, 사과, 바나나, 수박, 배를 넣어줍니다. 리스트이기 때문에 항상 0부터 시작하고 END를 사용시 마지막에 추가해주는 기능이 있습니다.
pack을 해주어 나타나도록 합니다.
이렇게 하고 실행한다면

이런 리스트 박스 하나가 나옵니다.
여기서 버튼을 누르면 내가 선택한 항목이 출력되는 버튼을 제작해주겠습니다.

바로 이 코드인데요.
def btncmd():라는 함수를 제작합니다.
기능은 선택된 아이템을 출력하고 몇번째에 있는 물건인지 표시한 후
리스트에서 제거하는 기능입니다.
cimmand = btncmd를 버튼 안에 넣어준 후 실행하면

이렇게 나오고
선택한 후 check를 눌러주면

이렇게 줄어들고

이렇게 출력되고 있는 것을 볼 수 있습니다.
여섯번째는 체크박스입니다.
코드는 아래와 같습니다.

체크박스는 checkbutton()을 사용해서 제작합니다.
chkvar = IntVar()라고 써있는데 이것은 정수 변수를 설정한다는 뜻입니다.
variable은 체크박스의 변수를 저장할 제어 변수입니다.
select()는 선택됨 이라는 뜻으로 자동으로 실행 시 선택 상태로 유지시켜놓습니다.
체크박스 역시 text""를 이용해서 안에 텍스트를 입력할 수 있습니다.
체크박스 2개를 생성하고 실행하면

이런식으로 나타납니다.
여기에 누르면 첫번째 박스를 선택했는지 출력하고 체크 상태가 사라지는
버튼을 추가하겠습니다.

def cmd():로 함수를 선언합니다.
cmd는 선택 여부를 0또는 1로 나타내고
선택 상태를 비선택으로 바꾸는 기능이 있습니다.
버튼을 누르면

비선택으로 바뀌고

1을 출력합니다.
일곱번째는 라디오 버튼입니다.
라디오 버튼은

이렇게 생긴 선택 위젯입니다.
코드는 아래와 같습니다.


라디오 버튼은 RadioButton() 함수로 제작합니다.
burger_var와 drink_var에 각각 IntVar()을 선언해 혼선이 생기지 않게
구분해줍니다.
버거는 value를 숫자로 설정하고
음료는 value를 str로 설정하였습니다.
pack()해줘서 나타나도록 합니다.
이번에는 선택한 목록을 출력하는 버튼을 제작하겠습니다.

cmd()는
선택된 버거와 음료의 valuable을 출력하는 코드입니다.
마찬가지로 Button()에 넣어주면 완성입니다.

실행하면 이렇게 되고
order을 누르면

이렇게 출력되는것을 볼 수 있습니다.
여덟번째는 메모장입니다.
예 맞습니다 지금 생각하는 그거

코드는 이렇습니다.


제목은 windows textfile로 설정합니다.

이건 파일 열기와 저장 명령어입니다.
열기는 컴퓨터의 파일을 불러오고 이전에 썼던 부분을 지운 다음 저장된 파일의
내용을 삽입합니다.
저장은 파일을 utf8로 저장합니다.

이 부분은 메뉴 부분입니다.
맨 상단 부분인데 새 창 열기 저장 끝내기 등의 상위 카테고리를 만들고
파일 카테고리에 file, edit, option, view, help와 같은 하위 카테고리를 삽입합니다.

스크롤바는 Scrollbar()로 생성되며 오른쪽 Y축 전체에 뜨도록 설정했습니다.

본문은 왼쪽부터 시작하며 스크롤바로 y축을 이동할 수 있게 설정합니다.
실행하게되면

이런 식으로 실행됩니다.
아홉번째는 파일 관련 프로그램입니다.





이번에는 파일을 변환저장(?) 하는 프로그램입니다.

이런식으로 작동하는데요

이런 함수를 선언해 파일을 추가하고 선택해서 삭제합니다.

저장 경로와 시작 함수를 선언합니다.

시작을 눌렀을 때 파일 또는 경로가 없다면 경고를 띄우는 코드입니다.

이미지는 이런 식으로 통합하는 작업을 합니다.
이미지 통합 작업이 끝났다면 작업 완료 알림을 띄웁니다.

아까 실행 화면에 있던 파일 추가와 파일 삭제, 불러온 파일을 리스트 형식으로 띄우는
위젯에 대한 코드입니다.



불러온 파일의 경로를 보여주는 위젯과
사진의 가로 세로 형식을 설정할 위젯의 코드입니다.

시작과 닫기 버튼에 대한 위젯 코드입니다.
실행했을 때 파일이 불러와지고 저장 경로가 뜨는 것을 볼 수 있습니다.

열번째는 스크린 샷 입니다.

코드는 상당히 간단합니다.
pip install pillow를 해주어 PIL모듈을 설치합니다.
time모듈을 불러와서
5초 동안 정지 후 ImageGrav.grab()을 해서 스크린 샷을 찍고 번호를 메겨 저장하도록 합니다.

실행했을 때 10개의 사진들이 찍히고 저장된 것을 볼 수 있습니다.
여기까지가 Tkinter를 이용한 GUI수업입니다.
GUI를 이용하면 그동안 텍스트로만 구현했던 프로그램들을 일반 사용자들이
더 쉽게 사용할 수 있고 프로그램의 상품성과 기능 모두 올릴 수 있는 좋은 기능이라고 생각합니다. 전에 제작한 프로그램을 GUI를 이용하면 좋을것 같다는 생각이 듭니다.
다음 시간에는 팀 프로젝트를 진행한 것을 올리도록 하겠습니다.
'고등학교 활동' 카테고리의 다른 글
| 꿈두레 최종 프로젝트 실시(2022. 6. 17.) (0) | 2024.06.25 |
|---|---|
| 꿈두레 GUI 총정리(2022.5.18 ~ 2022.6.2)1편 (0) | 2024.06.25 |