Я пытаюсь отключить все виджеты (ttk) в кадре, но кажется, что виджет масштаба доставляет мне некоторые проблемы, поскольку он выдает следующее исключение:
_tkinter.TclError: неизвестная опция "-state"
Некоторый соответствующий код:
import tkinter as tk
from tkinter import ttk
def disable_widgets(parent):
for child in parent.winfo_children():
child.config(state = 'disabled')
root = tk.Tk()
# Frame full of widgets to toggle
frame_of_widgets = ttk.Frame(root)
frame_of_widgets.pack()
# Button to be disabled
button_to_disable = ttk.Button(frame_of_widgets)
button_to_disable.pack()
# Entry to be disabled
entry_to_disable = ttk.Entry(frame_of_widgets)
entry_to_disable.pack()
# Scale to be disabled
scale_to_disable = ttk.Scale(frame_of_widgets)
scale_to_disable.pack()
# Button that disables widgets in frame
disable_button = ttk.Button(root,text="Disable",command= lambda: disable_widgets(frame_of_widgets))
disable_button.pack()
root.mainloop()
Работает на кнопку и вход, но не на шкалу. Я думал, что одним из преимуществ ttk было сделать виджеты более унифицированными с помощью общих методов и атрибутов, поэтому я предполагаю, что, возможно, я неправильно обращаюсь ко всем трем этим виджетам?