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

ความแตกต่างระหว่าง .pack และ .configure สำหรับ Widget ใน Tkinter

เราใช้ตัวจัดการเรขาคณิตต่างๆ เพื่อวางวิджชั่นบนหน้าต่าง Tkinter ตัวจัดการเรขาคณิตบอกแอปพลิเคชันว่าต้องวางวิджชั่นที่ไหนและจัดระเบียบอย่างไรในหน้าต่าง ด้วยตัวจัดการเรขาคณิต คุณสามารถกำหนดค่าขนาดและพิกัดของวิджชั่นภายในแอปพลิเคชันได้

เมธอด pack() ใน Tkinter เป็นหนึ่งในสามตัวจัดการเรขาคณิต ตัวจัดการเรขาคณิตอื่นๆ คือ grid() และ place() ตัวจัดการเรขาคณิต pack() มักใช้ให้ padding และวิธีจัดเรียงวิджชั่นในหน้าต่าง

เพื่อกำหนดคุณสมบัติและแอตทริบิวต์ของวิджชั่นอย่างชัดเจนหลังจากกำหนดแล้ว คุณสามารถใช้เมธอด configure() เมธอด configure() ยังใช้กำหนดคุณสมบัติของวิджชั่นรวมถึงคุณสมบัติการปรับขนาดและการจัดเรียง

ตัวอย่าง

ในตัวอย่างต่อไปนี้ เราสร้าง Label widget และ Button widget คุณสมบัติและแอตทริบิวต์ของทั้งสองวิджชั่นสามารถกำหนดค่าได้อย่างมีประสิทธิภาพโดยใช้เมธอด pack() และ configure()

# นำเข้าไลบรารีที่จำเป็น
from tkinter import *

# สร้างอินสแตนซ์เฟรมหรือหน้าต่าง Tkinter
win = Tk()

# กำหนดขนาดหน้าต่าง
win.geometry("700x350")

# กำหนดฟังก์ชัน
def close_win():
    win.destroy()

# สร้าง label
my_label = Label(win, text="Hey Everyone!", font=('Arial 14 bold'))
my_label.pack(pady=30)

# สร้างปุ่ม
button = Button(win, text="Close")
button.pack()

# กำหนดคุณสมบัติ label
my_label.configure(bg="black", fg="white")
button.configure(font=('Monospace 14 bold'), command=close_win)

win.mainloop()

ผลลัพธ์

การรันโค้ดด้านบนจะแสดงหน้าต่างพร้อม Button และ Label widget คุณสามารถกำหนดคุณสมบัติของวิджชั่นเหล่านี้โดยการจัดการค่าในเมธอด configure()

ความแตกต่างระหว่าง .pack และ .configure สำหรับ Widget ใน Tkinter