Tkinter 에서 버튼을 클릭하여 새 창을 만드는 방법
이 튜토리얼에서는 Tkinter 의 버튼을 클릭하여 새 Tkinter 창을 만들고 여는 방법을 보여줍니다.
새로운 Tkinter 창 만들기
import tkinter as tk
def createNewWindow():
newWindow = tk.Toplevel(app)
app = tk.Tk()
buttonExample = tk.Button(app, text="Create new window", command=createNewWindow)
buttonExample.pack()
app.mainloop()
우리는 일반적으로 tk.Tk()
를 사용하여 새로운 Tkinter 창을 만들지 만, 위의 코드와 같이 루트 창을 이미 만든 경우에는 유효하지 않습니다.
Toplevel
은 Toplevel
위젯이 추가 ‘팝업’창을 표시하기 때문에이 상황에 적합한 위젯입니다.
buttonExample = tk.Button(app, text="Create new window", command=createNewWindow)
createNewWindow
함수를 버튼에 바인딩합니다.
위의 예에서 새 창은 빈 창이며 일반 루트 창에 위젯을 추가하는 것처럼 위젯을 더 추가 할 수 있지만 부모 위젯을 생성 된 ‘최상위’창으로 변경해야합니다.
import tkinter as tk
def createNewWindow():
newWindow = tk.Toplevel(app)
labelExample = tk.Label(newWindow, text="New Window")
buttonExample = tk.Button(newWindow, text="New Window button")
labelExample.pack()
buttonExample.pack()
app = tk.Tk()
buttonExample = tk.Button(app, text="Create new window", command=createNewWindow)
buttonExample.pack()
app.mainloop()
보다시피 labelExample
과 buttonExample
은 부모 위젯을 newWindow
로 지정하지만 app
는 갖지 않습니다.
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook