Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

สร้าง GUI Layout ด้วย Frame และ Grid ใน Tkinter

Frame เป็น container จัดกลุ่ม widget Grid geometry manager จัดวางในแถว (row) และคอลัมน์ (column) เหมาะสำหรับฟอร์มและ layout ซับซ้อน

ตัวอย่าง: ฟอร์มลงทะเบียน

from tkinter import *

win = Tk()
win.geometry("700x350")

frame = Frame(win)

def on_key_up():
    frame.pack_forget()
    win.configure(bg="green4")
    Label(win, text=f"Hey {fname.get()} Welcome to TutorialsPoint",
          font=('Segoe UI', 18, 'bold'), background="white").pack(pady=30)

Label(frame, text="Registration Form", font=('Helvetica 16 bold'), background="green3").grid(row=5, column=0, pady=30)
frame.pack()

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

Label(frame, text="Family name").grid(row=12, column=0, padx=5)
sname = Entry(frame)
sname.grid(row=15, column=0, padx=10)

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

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)

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

win.mainloop()

ผลลัพธ์

ฟอร์มลงทะเบียนจัดวางด้วย Grid ใน Frame

สร้าง GUI Layout ด้วย Frame และ Grid ใน Tkinter