일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 한글입력 씹힘
- 제이쿼리연결
- 자바스크립트
- 객체지향
- 자바스크립트 객체
- 블록 스코프
- 맥 mysql
- python GUI 사용하기
- 한글잘림
- 맥 아파치
- 한글입력 오류
- python tkinter 인터페이스
- 한글입력 안됨
- 자바스크립트 class
- 자바스크립트 객체 만들기
- max apache
- SwiftUI 기반의 iOS 프로그래밍
- 배열 분해 할당
- jquery 사용하기
- 제이펍 출판
- 한글입력 잘림
- 객체
- max MySQL
- 비주얼스튜디오 코드
- 황반석 옮김
- 기획자랑 사이좋게 지내고 싶다
- 생활코딩
- 핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍
- 닐 스미스 지음
- 자바스크립트 배열 할당
- Today
- Total
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 한글입력 씹힘
- 제이쿼리연결
- 자바스크립트
- 객체지향
- 자바스크립트 객체
- 블록 스코프
- 맥 mysql
- python GUI 사용하기
- 한글잘림
- 맥 아파치
- 한글입력 오류
- python tkinter 인터페이스
- 한글입력 안됨
- 자바스크립트 class
- 자바스크립트 객체 만들기
- max apache
- SwiftUI 기반의 iOS 프로그래밍
- 배열 분해 할당
- jquery 사용하기
- 제이펍 출판
- 한글입력 잘림
- 객체
- max MySQL
- 비주얼스튜디오 코드
- 황반석 옮김
- 기획자랑 사이좋게 지내고 싶다
- 생활코딩
- 핵심만 골라 배우는 SwiftUI 기반의 iOS 프로그래밍
- 닐 스미스 지음
- 자바스크립트 배열 할당
- Today
- Total
java,javascript,android,php,sql,공부용,메모용
python / tkinter를 이용한 GUI 창 띄우기, 위젯 종류 본문
빅데이터 과정으로 학원에서 python에 관련해서 배운적 있다 데이터를 분석하고 데이터를 수집하고
수집한 데이터를 뿌리는 과정을 배웠지만 크게 기억나지 않는다.
그치만 누군가 python에 물어보고 다시 복습겸 조금씩 혼자 살펴보면 이전보다는 배우는 과정이 좀 더 빨라진거 같다
이번에 친구가 tkinter에 관래서 물어봤다.
tkinter는 파이썬에서 GUI 프로그래밍을 할 때 사용한다고 한다 딱히 이걸 학원에서 사용해보진 않았다
표준 라이브러리로 파이썬 설치하고 나면 바로 사용이 가능하다고 한다
이전에
atom에서 autocomplete-python traceback output: 오류가 나서 해결했다
위젯 | 설명 |
Label | 텍스트 혹은 이미지 표시 |
Button | 명령을 실행하기 위한 간단한 버튼 |
Entry | 한 라인으로 된 단순한 텍스트 박스 |
ListBox | 리스트 박스 |
Checkbutton | 값을 토글(toogle)하는 네모난 모양의 체크박스 |
Radiobutton | 다양한 옵션 중에서 하나를 선택하기 위한 동그란 버튼(들) |
Text | 멀티 라인 텍스트 박스로서 일부 Rich Text 기능 제공 |
Message | Label과 비슷하게 텍스트 표시하나 Label과 달리 자동 래핑 기능이 있음 |
Scale | 슬라이스 바 |
Frame | 다른 위젯들을 담기 위한 컨테이너 위젯으로 다른 위젯들을 그룹화할 때 사용 |
Scrollbar | 스크롤 바 |
Canvas | 그래프와 점들로 그림을 그릴 수 있으며, 커스텀 위젯을 만드는데 사용하기도 함 |
Menu | 메뉴 |
Menubutton | 메뉴 버튼 |
윈도우를 만들어서 그안에 사용할 수 있는 위젯종류이다
라벨(Label), 버튼(button), 입력위젯(Entry), 리스트박스(ListBox), 체크버튼(Checkbutton), 라디오버튼(Radiobutton),
메뉴(Menu) 윈도우의 창에 보통 |파일|편집|보기|선택|찾기|패키지|도움말 이런게 있을거다 이런걸 나타낸다,
텍스트(Text)여러줄 문자열을 사용하기 위한 컴포넌트,
메세지위젯(Message) 여러 줄의 문자열을 포함하는 메시지를 생성한다,
Scale 위젯 값을 설정하기 위한 조정바 좌우 움직이는거,
프레임(Frame) 2개의 프레임을 만들어 각각의 프레임에 레이블을 배치하거나 다른것들을 사용할 수 있음 (윈도우가 1개 프레임이 2개 양쪽으로 나눠사용 가능/위젯 그룹화),
https://docs.python.org/ko/3/library/tkinter.html
자세한 내용은 문서를 참고해서 사용하자
메인생성 (tk 객체 생성) --> 위젯생성 (GUI 컴포넌트 생성) --> 위젯을 창에 배치 (GUI 컴포넌트를 메인창에 배치) --> 메인 루프 실행 (GUI 화면 완성)
from tkinter import * # tkinter 라이브러리 모두 가져오기
root = Tk() # T 대문자 k 소문자 가장 상위 레벨의 윈도우 창 생성
root.mainloop()
# class tkinter.Tk(screenName=None, baseName=None, className='Tk', useTk=1)
# Tk 클래스는 인자 없이 인스턴스화됩니다. 이것은
# Tk의 최상위 위젯을 만드는데, 일반적으로 응용 프로그램의 메인 창입니다.
# 인스턴스마다 고유한 Tcl 인터프리터가 연결됩니다.
# mainloop()는 이벤트 메시지 루프로서 키보드나 마우스
# 혹은 화면 Redraw와 같은 다양한 이벤트로부터 오는 메시지를 받고 전달하는 역활을 한다.
from tkinter import *# tkinter 라이브러리 모두 가져오기
window = Tk() # tk 객체 인스턴스 생성하기
window.geometry('300x200+100+100')
window.title('Dada!')
window.resizable(False, False)
label = Label(window, text='Hello World')
# 레이블 생성
label.pack()
# 레이블을 화면에 배치
window.mainloop()
# .title 윈도우의 창 제목
# .geometry('너비x높이+x생성좌표+y생성좌표') 여기서 생성좌표는 화면의 위치
# resizeable(상하, 좌우)
# 윈도우 창 크기 조절 가능 여부 True(1) 창 조절 가능 False(0) 불가능
라벨이 속성을 배치 할 수 있고 윈도우 내에 버튼 위젯을 생성하는 것도 가능하고 속성(parameter)을 주는것 또한 가능하다 위젯 종류는 위에 표를 확인하자
'개발 > python' 카테고리의 다른 글
윈도우 cmd 창에서 D드라이브 다른 드라이브 이동 (0) | 2024.03.27 |
---|---|
python atom / 파이썬 아톰 autocomplete-python traceback output: 오류 (0) | 2021.10.21 |