Python Tkinter ТТК Сепаратор с этикеткой
Я пытаюсь создать собственный виджет, который включает в себя разделитель за меткой. Я бы хотел, чтобы разделитель растягивался за меткой с каждой стороны окна (используя сетку). Я попытался создать это сам, но я не мог заставить разделитель придерживаться краев.
import tkinter as tk
from tkinter import ttk
class LabelSeparator (tk.Frame):
def __init__ (self, parent, text = "", width = "", *args):
tk.Frame.__init__ (self, parent, *args)
self.separator = ttk.Separator (self, orient = tk.HORIZONTAL)
self.separator.grid (row = 0, column = 0, sticky = "ew")
self.label = ttk.Label (self, text = text)
self.label.grid (row = 0, column = 0, padx = width)
if __name__ == "__main__":
root = tk.Tk ()
root.geometry ("200x40")
label = LabelSeparator (root, text = "Label", width = 15)
label.grid (sticky = "ew")
label2 = LabelSeparator (root, text = "A Second Label", width = 15)
label2.grid (sticky = "ew")
root.mainloop ()
Единственный способ расширить разделитель, который я нашел, заключался в увеличении padx на метке, но это не решило проблему.
Я должен отметить, что я очень новичок в создании пользовательских виджетов.