# Tk를 사용한 그래픽 사용자 인터페이스

Tk/Tcl은 오랫동안 파이썬의 중요한 부분이었습니다. 견고하고 플랫폼 독립적인 윈도우 도구상자(파이썬 프로그래머는 `tkinter` 패키지를 통해 사용할 수 있습니다)와 그 확장(`tkinter.tix`와 `tkinter.ttk` 모듈)을 제공합니다.

The `tkinter` package is a thin object-oriented layer on top of Tcl/Tk. To use `tkinter`, you don’t need to write Tcl code, but you will need to consult the Tk documentation, and occasionally the Tcl documentation. `tkinter` is a set of wrappers that implement the Tk widgets as Python classes.

`tkinter`’s chief virtues are that it is fast, and that it usually comes bundled with Python. Although its standard documentation is weak, good material is available, which includes: references, tutorials, a book and others. `tkinter` is also famous for having an outdated look and feel, which has been vastly improved in Tk 8.5. Nevertheless, there are many other GUI libraries that you could be interested in. The Python wiki lists several alternative GUI frameworks and tools.

- `tkinter` — Tcl/Tk 파이썬 인터페이스
  - Tkinter 모듈
  - Tkinter 구명조끼
    - 이 절을 사용하는 방법
    - 간단한 Hello World 프로그램
  - Tcl/Tk (아주 빨리) 훑어보기
  - 기본 Tk를 Tkinter로 매핑하기
  - Tk와 Tkinter의 관계
  - 간편한 레퍼런스
    - 옵션 설정
    - 패커
    - 패커 옵션
    - 위젯 변수 결합하기
    - 창 관리자
    - Tk 옵션 데이터형
    - 바인딩과 이벤트
    - index 매개 변수
    - 이미지
  - 파일 처리기
- `tkinter.colorchooser` — 색상 선택 대화 상자
- `tkinter.font` — Tkinter 글꼴 래퍼
- Tkinter 대화 상자
  - `tkinter.simpledialog` — 표준 Tkinter 입력 대화 상자
  - `tkinter.filedialog` — 파일 선택 대화 상자
    - 네이티브 로드/저장 대화 상자
  - `tkinter.commondialog` — 대화창 템플릿
- `tkinter.messagebox` — Tkinter 메시지 프롬프트
- `tkinter.scrolledtext` — 스크롤 되는 Text 위젯
- `tkinter.dnd` — 드래그 앤드 드롭 지원
- `tkinter.ttk` — Tk 테마 위젯
  - Ttk 사용하기
  - Ttk 위젯
  - Widget
    - 표준 옵션
    - 스크롤 가능한 위젯 옵션
    - 레이블 옵션
    - 호환성 옵션
    - 위젯 상태
    - ttk.Widget
  - Combobox
    - 옵션
    - 가상 이벤트
    - ttk.Combobox
  - Spinbox
    - 옵션
    - 가상 이벤트
    - ttk.Spinbox
  - Notebook
    - 옵션
    - 탭 옵션
    - 탭 식별자
    - 가상 이벤트
    - ttk.Notebook
  - Progressbar
    - 옵션
    - ttk.Progressbar
  - Separator
    - 옵션
  - Sizegrip
    - 플랫폼별 노트
    - 버그
  - Treeview
    - 옵션
    - 항목 옵션
    - 태그 옵션
    - 열 식별자
    - 가상 이벤트
    - ttk.Treeview
  - Ttk 스타일링
    - 레이아웃
- `tkinter.tix` — Extension widgets for Tk
  - Using Tix
  - Tix Widgets
    - Basic Widgets
    - File Selectors
    - Hierarchical ListBox
    - Tabular ListBox
    - Manager Widgets
    - Image Types
    - Miscellaneous Widgets
    - Form Geometry Manager
  - Tix Commands
- IDLE
  - 메뉴
    - File 메뉴 (셸과 편집기)
    - Edit 메뉴 (셸과 편집기)
    - Format 메뉴 (편집기 창 전용)
    - Run 메뉴 (편집기 창 전용)
    - Shell 메뉴 (셸 창 전용)
    - Debug 메뉴 (셸 창 전용)
    - Options 메뉴 (셸과 편집기)
    - Window 메뉴 (셸과 편집기)
    - Help 메뉴 (셸과 편집기)
    - 문맥 메뉴
  - 편집과 탐색
    - 편집기 창
    - 키 바인딩
    - 자동 들여쓰기
    - 완성
    - 콜팁
    - 코드 컨텍스트
    - 파이썬 셸 창
    - 텍스트 색상
  - 시작과 코드 실행
    - 명령 줄 사용법
    - 시작 실패
    - 사용자 코드 실행하기
    - 셸의 사용자 출력
    - tkinter 응용 프로그램 개발하기
    - 서브 프로세스 없이 실행하기
  - 도움말과 환경 설정
    - 도움말 소스
    - 환경 설정
    - macOS의 IDLE
    - 확장