tkinter.ttk เป็นโมดูลที่ใช้ในการจัดรูปแบบวิดเจ็ต tkinter เช่นเดียวกับ CSS ที่ใช้ในการจัดรูปแบบองค์ประกอบ HTML เราใช้ tkinter.ttk เพื่อจัดรูปแบบวิดเจ็ต tkinter
นี่คือข้อแตกต่างที่สำคัญระหว่าง วิดเจ็ต tkinter และ tkinter.ttk −
-
วิดเจ็ต Tkinter ใช้เพื่อเพิ่มปุ่ม ป้ายกำกับ ข้อความ ScrollBar ฯลฯ อย่างไรก็ตาม tkinter.ttk รองรับวิดเจ็ตได้หลากหลายเมื่อเทียบกับวิดเจ็ต tkinter
-
Tkinter.ttk ไม่รองรับ Place, Pack() และ Grid() ดังนั้นจึงขอแนะนำให้ใช้วิดเจ็ต tkinter กับ ttk
-
Ttk มีคุณสมบัติและการกำหนดค่ามากมายที่ขยายฟังก์ชันการทำงานของแอปพลิเคชันดั้งเดิมและทำให้ดูทันสมัยยิ่งขึ้น
-
วิดเจ็ต Tkinter เป็นวิดเจ็ตดั้งเดิมในไลบรารี tkinter อย่างไรก็ตาม ttk เป็นโมดูลที่มีธีม
-
หากต้องการแทนที่วิดเจ็ต Tk พื้นฐานใน tkinter ให้ใช้ "from tkinter.ttk import *"
ตัวอย่าง
ในตัวอย่างต่อไปนี้ เราได้จัดรูปแบบวิดเจ็ตเนทีฟ tkinter โดยใช้โมดูล tkinter.ttk เราจะสร้างปุ่มที่จะเปลี่ยนสีพื้นหลังของวิดเจ็ตข้อความ
#Import the tkinter library from tkinter import * from tkinter.ttk import * #Create an instance of tkinter frame win = Tk() #Set the geometry win.geometry("620x400") #Add a class to style the tkinter widgets style = ttk.Style() style.configure('TEntry', foreground = 'red') #Define a function to change the text color def change_color(): text.configure(background="red") #Create a text widget text=Label(win,text="This is a New Text",foreground="white", background="blue",font=('Aerial bold',20)) text.pack(pady=20) #Create a Button widget Button(win, text= "Click Here", command= change_color).pack(pady=10) win.mainloop()
ผลลัพธ์
การเรียกใช้โค้ดข้างต้นจะสร้างผลลัพธ์ต่อไปนี้ -
ตอนนี้ให้คลิกปุ่ม "คลิกที่นี่" มันจะเปลี่ยนสีพื้นหลังของวิดเจ็ตข้อความเป็นสีแดง