Python tkinter GUI

“Python 에 기본 내장된 tkinter 모듈을 사용해 GUI 작성하는 예제와 설명입니다. ”

Tkinter is Python’s de-facto standard GUI (Graphical User Interface) package. It is a thin object-oriented layer on top of  Tcl/Tk.

참조 : https://likegeeks.com/python-gui-examples-tkinter-tutorial/
https://pythonprogramming.net/python-3-tkinter-basics-tutorial/


1.  기본사용법
1) tkinter 버전확인(파이썬 콘솔에서)

2) 리눅스 환경에서는 tkinter 설치 필요

3) 기본사용법

2. tkinter 위젯

위젯설명
Button버튼
Canvas그래프와 점으로 그림을 그릴 수 있는 캔버스
CheckButton체크버튼
ttk.Comboboxfrom tkinter import ttk
콤보박스
Entry한 줄 텍스트박스
Frame컨테이너 위젯
Label텍스트 또는 이미지 표시
ListBox리스트 박스
Menu메뉴
Menubutton메뉴 버튼
Message텍스트 표시
Progressbarfrom tkinter.ttk import Progressbar
프로그레스 바
RadioButton라디오 버튼
Scale슬라이드 바
Scrollbar스크롤 바
ScrolledText스크롤 가능한 텍스트박스
Spinbox스핀박스 (숫자 크기 조정)
Text멀티라인 텍스트 박스
Toplevel새 윈도우를 생성할 때 사용

3. 위젯 배치방법

* 이 GUI를 grid() 와 pack()로 작성하는 방법입니다. *

1) grid()
* grid() 메서드는 위젯의 위치를 row 로 행의 위치를 column 으로 열 위치를 지정합니다. *
① row : 행 위치
column : 열 위치
③ rowspan : 행 병합으로 위치 조정
④ columnspan : 열 병합으로 위치 조정
⑤ sticky : 위젯을 채우기 위한 방법 N,E,S,W,NW,NE,SW, SE
⑥ ipadx : 위젯 내부 x 패딩
⑦ ipady : 위젯 내부 y 패딩
⑧ padx : 위젯 외부 x 패딩
⑨ pady : 위젯 외부 y 패딩

2) pack()
* pack() 메서드는 위젯 정렬 시 위젯 그룹별 프레임을 나누어 주어야 작업이 편리합니다. *
① side=LEFT|RIGHT|TOP|BOTTOM
특정한 위치로 공간할당
② anchor=NW|N|NE|E|SE|S|SW|W|CENTER
할당된 공간 내에서 위치를 동.서.남.북 좌표로 9가지 형태로 지정
③ fill=NONE|X|Y|BOTH
할당된 공간에 대한 크기 맞춤
④ expand=True|False
미사용 공간 확보


4. 샘플소스

1) 이벤트 핸들러로 더하기 실행

2) 일정시간마다 Ping 점검하는 GUI 프로그램

3) filedialog 로 exe 파일선택 후 실행 (class 형태로 작성)

4) 메인 윈도우에서 서브 윈도우 생성, 프레임 사용한 레이아웃과 이벤트

 

댓글 남기기

이메일은 공개되지 않습니다. 필수 입력창은 * 로 표시되어 있습니다

This site uses Akismet to reduce spam. Learn how your comment data is processed.