본문 바로가기
개발기록/python

[python] python GUI 모듈 tkinter (text, input, radioButton, button)

by spectrum20 2024. 9. 21.

tkinter 모듈로 python GUI 만들기

 

GUI 창 생성

import tkinter as tk

root = tk.Tk()

# 타이틀 설정
root.title('타이틀')
# 크기 설정
root.geometry('300x300')
# 크기 조절
root.resizable(Boolean, Boolean)

root.mainloop()

 

 

텍스트 입력하기

label1 = tk.Label(root, text="label1")
label2 = tk.Label(root, text="label2")

label1.pack()
label2.pack()

 

input 입력창 만들기

entry1 = tk.Entry(root, width=5)
entry2 = tk.Entry(root, width=10)

entry1.pack()
entry2.pack()

 

 

라디오버튼 만들기

# tk 변수 만들기
radio_value = tk.IntVar()

radio1 = tk.Radiobutton(root, text="radio1", variable = radio_value, value=1)
radio2 = tk.Radiobutton(root, text="radio2", variable = radio_value, value=2)

radio1.pack()
radio2.pack()

* tk모듈에서 라디오버튼의 값을 가져오려면 먼저 변수를 만들어야 한다

var = tk.StringVar()        string 변수

var = tk.IntVar()             int 변수

var = tk.DoubleVar()      float 변수

var = tk.BooleanVar()    Boolean 변수

그 다음, 라디오버튼의 variable 속성에 변수를 넣어주고, value 속성에 변수의 DataType에 맞는 값을 넣어준다

radio1 = tk.Radiobutton(root, text="radio1", variable = radio_value, value=1)

값은 var.get()으로 가져올 수 있다 

radio_value.get()

 

버튼 만들기

def btn():
	print('hi')
    
button = tk.Button(root, text='버튼', command=btn)
button.pack()

버튼을 누를 때마다 'hi'를 print하는 코드

 

 

 

 

 

완성코드

import tkinter as tk

root = tk.Tk()

# 타이틀 설정
root.title('타이틀')
# 크기 설정
root.geometry('300x300')
# 크기 조절
root.resizable(False, True)


# 버튼 누르기 함수
def btn():
	print('hi')
	print(radio_value.get())
	print(entry1.get())
	print(entry2.get())


# tk 변수 만들기
radio_value = tk.IntVar()

radio1 = tk.Radiobutton(root, text="radio1", variable = radio_value, value=1)
radio2 = tk.Radiobutton(root, text="radio2", variable = radio_value, value=2)

radio1.pack()
radio2.pack()


# text 입력
label1 = tk.Label(root, text="label1")
label2 = tk.Label(root, text="label2")

label1.pack()
label2.pack()


# input 입력받기
entry1 = tk.Entry(root, width=5)
entry2 = tk.Entry(root, width=10)

entry1.pack()
entry2.pack()


# 버튼	  
button = tk.Button(root, text='버튼', command=btn)
button.pack()


root.mainloop()

 

코드실행 결과

두번째 라디오버튼 (radio2)를 선택하고 버튼을 누르면, radio2 = tk.Radiobutton(root, text="radio2", variable = radio_value, value=2)

위 코드의 value값인 2를 가져온다

 

 

 

반응형

댓글