Tkinter

파이썬 tkinter: pack(), grid(), place() 위젯 배치 비교 요약

파이썬 tkinter: 위젯을 배치할 때 pack(), grid(), place()를 비교하면서 언제 어떤 것을 쓰면 좋은지 정리해 봅니다.🔹 1. pack()특징: 위젯을 상하좌우로 차례대로 배치장점: 간단한 레이아웃에 적합, 코드가 짧음단점: 복잡한 화면 배치에는 불편📌 예시:import tkinter as tkroot = tk.Tk()btn1 = tk.Button(root, text="위")btn1.pack(side="top")btn2 = tk.Button(root, text="아래")btn2.pack(side="bottom")btn3 = tk.Button(root, text="왼쪽")btn3.pack(side="left")btn4 = tk.Button(root, text="오른쪽")btn4.p..

파이썬, tkinter 위젯 배치하기: place()

tkinter의 place() 함수는 위젯을 절대 좌표(픽셀 단위) 또는 비율(상대 좌표) 로 배치할 때 사용합니다.즉, 화면에서 정확한 위치에 위젯을 두고 싶을 때 유용합니다.📝 place() 함수의 주요 옵션x, y : 위젯의 왼쪽 위 모서리를 기준으로 하는 좌표 (픽셀 단위)relx, rely : 부모 위젯(창)의 가로, 세로 크기에 대한 상대 좌표 (0.0 ~ 1.0)width, height : 위젯의 가로, 세로 크기 (픽셀 단위)relwidth, relheight : 부모 위젯 크기에 대한 상대 크기 (0.0 ~ 1.0)anchor : 기준점을 바꿀 수 있음 (예: "center", "n", "e", "w", "s", "ne", "sw" 등)📌 예제 1: 절대 좌표로 배치import tki..

파이썬: tkinter, grid() 이용한 위젯 배치, rowspan columnspan 셀 병합 (합치기)

tkinter에서 grid()는 위젯을 행(row), 열(column) 단위로 배치할 때 사용하는 메서드입니다.엑셀 표처럼 격자(Grid) 개념으로 배치할 수 있어서 pack()보다 직관적일 때가 많습니다.📌 기본 문법위젯.grid(row=행번호, column=열번호, 옵션...) row : 배치할 행 번호 (0부터 시작)column : 배치할 열 번호 (0부터 시작)rowspan : 위젯이 차지할 행의 개수columnspan : 위젯이 차지할 열의 개수sticky : 셀 안에서 위젯의 정렬 (N, S, E, W 조합)padx, pady : 셀 안에서 여백📌 간단 예제import tkinter as tkroot = tk.Tk()root.title("grid() 예제")# 레이블label1 = tk.L..

tkinter, pack()을 이용한 위젯 배치

파이썬, tkinter의 pack()을 활용한 몇 가지 위젯 배치 예제를 만들어 봅니다.pack()은 위젯을 상하좌우 방향으로 자동 배치할 때 유용하고, side, fill, expand 옵션 조합에 따라 다양한 배치 패턴을 만들 수 있습니다.1. 기본 세로 배치 (기본값: side="top")import tkinter as tkroot = tk.Tk()tk.Button(root, text="버튼 1").pack()tk.Button(root, text="버튼 2").pack()tk.Button(root, text="버튼 3").pack()root.mainloop()특징: 위에서부터 차례로 쌓임.2. 가로 배치 (side="left")import tkinter as tkroot = tk.Tk()tk.But..

(파이썬) tkinter: 화씨 섭씨 온도 변환하기

tkinter 윈도우 GUI 프로그램으로 화씨온도를 섭씨온도로 변환하기 tkinter 윈도우 GUI 프로그램으로 섭씨온도를 화씨온도로 변환하기 참고로, 화씨 100 °F는 섭씨 37.8 °C이고 반대로 계산해도 같은 값이 나와야 합니다. 인터넷 상에 변환하는 코드는 많은데 막상 실행해 보면 답이 틀린게 많이 있습니다. from tkinter import * def f2c(): f = float(e1.get()) c = (f-32)*5/9 e2.delete(0, END) e2.insert(0, str(c)) def c2f(): c = float(e2.get()) f = (c*(9/5))+32 e1.delete(0, END) e1.insert(0, str(f)) win = Tk() win.title('화씨/..

Python 2024.01.11

(파이썬) tkinter: 마우스 이벤트 처리하기, 그림 그리기

tkinter 모듈을 이용한 윈도우용 응용 프로그램에서 마우스 이벤트 처리에 대해서 설명합니다. 위젯에 마우스 이벤트를 처리하는 방법은 다음과 같습니다. 위젯.bind("", 이벤트_발생시_처리할_함수) 이벤트 지정자에는 다음과 같은 기능이 있습니다. 이벤트 설명 마우스 버튼 마우스 왼쪽 버튼 마우스 가운데 버튼 마우스 오른쪽 버튼 마우스가 움직이면 발생 왼쪽 버튼을 누르면서 움직이면 발생 가운데 버튼을 누르면서 움직이면 발생 오른쪽 버튼을 누르면서 움직이면 발생 더블 클릭하면 발생 버튼을 놓을 때 발생 왼쪽 버튼을 놓을 때 발생 마우스 포인터가 위젯 내부에 진입하면 발생 마우스 포인터가 위젯을 벗어나면 발생 다음 코드는 윈도우 폼을 마우스 버튼으로 클릭하면 어떤 마우스 버튼인지 표시해줍니다. from ..

Python 2023.12.02

(파이썬) 메시지박스 출력하기 tkinter: messagebox.showinfo()

파이썬의 tkinter 모듈에서 제공하는 messagebox.show() 함수로 메시지 박스를 출력하는 코드입니다. 버튼을 클릭하면 출력되도록 했습니다. 이미지 경로는 알맞게 수정해서 실행해야 합니다. import tkinter.messagebox from tkinter import * def myFunc() : tkinter.messagebox.showinfo("안녕", "안녕하세요.\n홍길동입니다.") window = Tk() photo = PhotoImage(file="c:/temp/kakao11.png") button1 = Button(window, image=photo, command=myFunc) button1.pack() window.mainloop() 버튼을 클릭하면 아래와 같은 메시지박스..

Python 2023.11.21
반응형