본문 바로가기
Python

Python GUI 프로그래밍(Tkinter) – 2부

by 코딩하는 욤욤이 2024. 1. 30.
반응형

이전 Python GUI 프로그래밍 포스팅에서는 Tkinter 모듈을 사용하여 GUI 창을 만드는 방법에 대해 논의했습니다. 또한 Label 위젯을 사용하는 방법에 대한 예도 공유했습니다. 이 Python 튜토리얼에서는 GUI 위젯에 대해 더 논의하겠습니다.

Tkinter 설치 및 Python GUI 프로그래밍 소개에 대해서는 아래 링크에서 이전 튜토리얼을 읽어보세요.

https://www.thecrazyprogrammer.com/2015/08/python-gui-programming-tkinter-part-i.html

Python GUI 프로그래밍(Tkinter)


Python Tkinter 버튼 위젯


그래픽 사용자 인터페이스 모드의 버튼은 실행할 명령을 위한 자리 표시자일 뿐입니다. 버튼은 이벤트 기반 모델입니다. 시스템 사용자가 수행한 이벤트(또는 클릭)에 따라 활성화(또는 자체 실행)됩니다.

버튼 위젯은 사용자가 클릭하여 뒤에 숨겨진 명령을 실행함으로써 활성화될 수 있습니다.

 

구문
button1 = Button(frame1, text = "I am a Button")
 
여기서는 현재 프레임인 Frame1을 참조하는 변수 버튼1이 생성됩니다. 버튼에 있는 텍스트를 설명해야 하는 경우 그렇게 할 수 있습니다.
버튼1.그리드()

프레임에 연결된 모든 위젯에는 Grid() 메서드가 있습니다. 프레임에서 위젯의 위치를 ​​정렬할 수 있는 레이아웃 관리자와 연결하는 데 사용됩니다.

 


from Tkinter import *

root= Tk()
root.title("My First GUI")
root.geometry("800x200")
frame1=Frame(root)
frame1.grid()
label1 = Label(frame1, text = "Here is a label!")
label1.grid()
button1 = Button(frame1, text = "I am a Button")
button1.grid()
root.mainloop()


산출


이 버튼에는 뒤에서 작동하는 명령이 없으므로 아무 작업도 수행하지 않습니다. 그러나 다음 튜토리얼에서는 더 많은 예제를 제공할 것입니다.

이전에는 버튼을 만들고 텍스트를 정의했습니다. 그러나 버튼의 텍스트 속성을 변경해야 하거나 실제로 프레임에 있는 위젯을 변경해야 하는 경우에는 구성() 메서드를 사용하여 변경할 수 있습니다.


button1.configure(text = "Text Changed")
 

Python Tkinter 텍스트 위젯
텍스트 위젯은 모든 환경에서 가장 많이 사용되는 GUI 요소 중 하나입니다. 텍스트 위젯 또는 텍스트 상자는 사용자가 입력할 텍스트를 위한 자리 표시자입니다. 텍스트 상자에는 사용자가 입력한 요소(제약 조건이 없는 경우)를 원하는 만큼 입력할 수 있습니다.

 

구문
text1 = Text(frame1, width = 35, height = 5)
 
여기에서는 텍스트 위젯에 저장되는 새로운 변수 text1을 만들었습니다. 여기서는 텍스트 버튼과 관련된 몇 가지 속성을 정의했습니다.


from Tkinter import *

root= Tk()
root.title("My First GUI")
root.geometry("800x200")
frame1=Frame(root)
frame1.grid()
label1 = Label(frame1, text = "Here is a label!")
label1.grid()
button1 = Button(frame1, text = "I am a Button")
button1.grid()
button1.configure(text = "Me too!")
text1 = Text(frame1, width = 35, height = 5)
text1.grid()
root.mainloop()


산출

 

Python Tkinter 체크버튼 위젯
체크버튼은 주어진 옵션 목록에서 여러 옵션을 선택하는 데 사용됩니다. Checkbutton() 메서드를 사용하여 Python Tkinter 모듈에서 Checkbutton을 개발할 수 있습니다.

구문

checkbutton1 = Checkbutton(frame1, text= "C Programming")

 


from Tkinter import *

root= Tk()
root.title("My First GUI")
root.geometry("800x200")
frame1=Frame(root)
frame1.grid()
label1 = Label(frame1, text = "Here is a label!")
label1.grid()
text1 = Text(frame1, width = 35, height = 5)
text1.grid()
checkbutton1 = Checkbutton(frame1, text= "C Programming")
checkbutton1.grid()
checkbutton2 = Checkbutton(frame1, text= "Python Programming")
checkbutton2.grid()
root.mainloop()


산출


 기본적으로 확인란의 값은 0입니다. 즉, 기본적으로 선택되어 있지 않습니다. 값을 1로 만들려면 클릭하여 확인해야 합니다. Checkbutton 명령을 사용하여 단일 프레임에 여러 개의 확인 버튼을 정의할 수 있습니다.

Python Tkinter 라디오버튼 위젯
라디오버튼은 주어진 목록에서 여러 옵션 중 하나를 선택하는 데 사용됩니다. Radiobutton() 메서드를 사용하여 Python Tkinter 프레임에서 라디오버튼을 개발할 수 있습니다.

 구문
radiobutton1 = Radiobutton(frame1, text= "C Programming", value=0)
 
여기서는 Radiobutton() 메서드에 저장되는 radiobutton1 변수를 만들었습니다. 다음과 같은 몇 가지 중요한 매개변수를 제공해야 합니다.

1. 프레임: 우리가 참조하고 있는 프레임을 지정합니다.
2. 텍스트: 어떤 텍스트를 작성해야 하는지 지정하기 위해.
3. 값: 라디오버튼의 기본값을 언급합니다.

Radiobutton의 기본값은 1입니다. 즉, 기본적으로 선택되어 있습니다. 값을 변경하려면 값 0을 지정하는 매개변수를 지정해야 합니다.

 예
from Tkinter import *

root= Tk()
root.title("My First GUI")
root.geometry("800x200")
frame1=Frame(root)
frame1.grid()
label1 = Label(frame1, text = "Here is a label!")
label1.grid()
text1 = Text(frame1, width = 35, height = 5)
text1.grid()
radiobutton1 = Radiobutton(frame1, text= "C Programming", value=0)
radiobutton1.grid()
radiobutton2 =Radiobutton(frame1, text= "Python Programming")
radiobutton2.grid()
root.mainloop()


산출

 

반응형