Notebook widget ใน Tkinter ใช้สร้างแท็บ (Tabs) เพื่อแยกหน้าทำงานหรือกระบวนการต่างๆ ในแอปพลิเคชัน ปกติแล้วเมื่อคลิกที่แท็บ จะปรากฏเส้นประสี่เหลี่ยมรอบแท็บที่เลือก ซึ่งสามารถกำจัดได้โดยการกำหนดสไตล์ (style) ให้กับ Notebook widget
ตัวอย่างโค้ด
from tkinter import *
from tkinter import ttk
win = Tk()
win.geometry("700x350")
style = ttk.Style()
# กำหนด Layout สำหรับ Tab เพื่อลบเส้นประ
style.layout("Tab", [
('Notebook.tab', {'sticky': 'nswe', 'children': [
('Notebook.padding', {'side': 'top', 'sticky': 'nswe', 'children': [
('Notebook.label', {'side': 'top', 'sticky': ''})
]})
]})
])
# ตั้งค่า focuscolor ให้ตรงกับพื้นหลังเพื่อซ่อนเส้นประ
style.configure("Tab", focuscolor=style.configure(".")["background"])
my_notebook = ttk.Notebook(win)
my_notebook.pack(expand=1, fill=BOTH)
tab1 = ttk.Frame(my_notebook)
my_notebook.add(tab1, text="Tab 1")
tab2 = ttk.Frame(my_notebook)
my_notebook.add(tab2, text="Tab 2")
Label(tab1, text="Hello, Howdy?", font=('Helvetica 20 bold')).pack()
Label(tab2, text="This is a New Tab Context", font=('Helvetica 20 bold')).pack()
win.mainloop()
ผลลัพธ์
หน้าต่างแสดงหลายแท็บ โดยไม่มีเส้นประปรากฏเมื่อเลือกแท็บ

