บางครั้ง เฟรม tkinter จะถูกปรับขนาดโดยอัตโนมัติตามขนาดของวิดเจ็ต ในการทำให้ขนาดเฟรมคงที่ เราต้องหยุดวิดเจ็ตที่ขยายขนาดเฟรม จึงมีสามวิธี
-
บูลีน pack_propagate(จริง/เท็จ) เมธอดป้องกันการปรับขนาดเฟรมจากวิดเจ็ต
-
ปรับขนาดได้(x,y) เมธอดป้องกันไม่ให้ปรับขนาดหน้าต่าง
-
แพ็ค(เติม ขยาย) ค่าที่ปรับขนาดหน้าต่างเป็นขนาดที่กำหนดไว้ในเรขาคณิต
โดยทั่วไป วิดเจ็ตทั้งหมดภายในเฟรม tkinter จะตอบสนองและไม่สามารถปรับขนาดได้
ตัวอย่าง
from tkinter import *
win= Tk()
win.geometry("700x300")
#Don't allow the screen to be resized
win.resizable(0,0)
label= Label(win, text= "Select an option", font=('Times New Roman',12))
label.pack_propagate(0)
label.pack(fill= "both",expand=1)
def quit():
win.destroy()
#Create two buttons
b1= Button(win, text= "Continue")
b1.pack_propagate(0)
b1.pack(fill="both", expand=1)
b2= Button(win, command= quit, text= "Quit")
b2.pack_propagate(0)
b2.pack(fill="both", expand=1)
win.mainloop() ผลลัพธ์
การเรียกใช้โค้ดด้านบนจะทำให้หน้าต่างมีขนาดคงที่ซึ่งไม่สามารถปรับขนาดได้
