Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

프레임과 그리드를 사용하여 tkinter GUI 레이아웃 만들기

<시간/>

Tkinter는 GUI 기반 응용 프로그램을 만들기 위한 잘 알려진 Python 라이브러리입니다. Tkinter 라이브러리에 이미 있는 위젯, 함수 및 모듈을 사용하여 모든 기능을 갖춘 응용 프로그램을 만들 수 있습니다.

때로는 애플리케이션의 올바른 GUI를 선택하는 것이 우리 중 많은 사람들에게 어려운 작업이 됩니다. Tkinter에는 멋진 GUI를 만들기 위한 내장 기능과 확장 기능이 포함되어 있습니다.

일반적으로 Tkinter의 Frame 위젯은 애플리케이션의 모든 위젯을 컨테이너로 관리합니다. 기본 창에 포함될 수 있는 모든 속성을 상속합니다. 위젯의 레이아웃을 디자인하기 위해 지오메트리 관리자를 사용할 수 있습니다. Geometry Manager는 위젯의 레이아웃을 만들고 특정 순서로 배치하는 데 도움이 됩니다. 그리드 지오메트리 관리자는 모든 위젯을 X 및 Y 좌표계 형태로 배치합니다. 을 제공할 수 있습니다. 및 속성을 사용하여 애플리케이션의 아무 곳에나 위젯을 배치합니다.

이 예에서는 등록 양식의 GUI를 만듭니다.

# Import the Required libraries
from tkinter import *

# Create an instance of tkinter frame or window
win = Tk()

# Set the size of the window
win.geometry("700x350")

# Add a Frame widget
frame = Frame(win)

# Define a function to get the data and display a message
def on_key_up():
   name = fname
   frame.pack_forget()
   win.configure(bg="green4")
   Label(win, text="Hey " + fname.get() + " Welcome to TutorialsPoint",
      font=('Segoe UI', 18, 'bold'),
      background="white").pack(pady=30)
# Create a Label widget
   Label(frame, text="Registration Form",
   font=('Helvetica 16 bold'),
background="green3").grid(row=5, column=0, pady=30)
frame.pack()

# Add Field for First Value
Label(frame, text="First Name").grid(row=7, column=0, padx=5)
fname = Entry(frame)
fname.grid(row=10, column=0, padx=10)

# Add Field for Second Value
Label(frame, text="Family name").grid(row=12, column=0, padx=5)
sname = Entry(frame)
sname.grid(row=15, column=0, padx=10)

# Add Field for Email Address
Label(frame, text="Email address").grid(row=17, column=0, padx=5)
email = Entry(frame)
email.grid(row=20, column=0, padx=10)

# Add another field for accepting password value
Label(frame, text="Enter a Password").grid(row=22, column=0, padx=5)
password = Entry(frame, show="*")
password.grid(row=25, column=0, padx=10)

# Create a button
Button(frame, text="Register", command=on_key_up).grid(row=15,
column=1, padx=5)

win.mainloop()

출력

위의 코드를 실행하면 등록 양식 템플릿과 정보 등록 버튼이 표시됩니다.

프레임과 그리드를 사용하여 tkinter GUI 레이아웃 만들기