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

ความแตกต่างระหว่าง Grid และ Pack Geometry Manager ใน Tkinter

Pack Geometry Manager

  • เรียบง่าย ใช้สำหรับ layout แบบเส้นตรง (stack widgets)
  • รองรับ padx, pady, fill, expand, side
  • เหมาะสำหรับ layout เรียบง่าย 1 มิติ

Grid Geometry Manager

  • จัดวางในแถวและคอลัมน์ (2 มิติ) เหมือนตาราง
  • ควบคุมตำแหน่งแม่นยำด้วย row, column, rowspan, columnspan, sticky
  • เหมาะสำหรับ layout ซับซ้อน หลาย widget

ตัวอย่างเปรียบเทียบ

from tkinter import *
from tkinter import ttk

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

# Grid: วางที่ row=0, column=1
Button(win, text="Button-1").grid(row=0, column=1, padx=10, pady=20)

# Pack: วางตามลำดับ side=TOP (default)
# Button(win, text="Button-2").pack(padx=10, pady=20)

win.mainloop()

ผลลัพธ์

Grid วางตำแหน่งแม่นยำ Pack วางตามลำดับ

ความแตกต่างระหว่าง Grid และ Pack Geometry Manager ใน Tkinter

ความแตกต่างระหว่าง Grid และ Pack Geometry Manager ใน Tkinter