3
我想在兩個框架的tkinter中創建一個圖形用戶界面,並將底部框架變成灰色,直到發生某些事件。有沒有辦法灰化(禁用)tkinter框架?
下面是一些示例代碼:無需逐個灰掉所有的幀2的小部件的
from tkinter import *
from tkinter import ttk
def enable():
frame2.state(statespec='enabled') #Causes error
root = Tk()
#Creates top frame
frame1 = ttk.LabelFrame(root, padding=(10,10,10,10))
frame1.grid(column=0, row=0, padx=10, pady=10)
button2 = ttk.Button(frame1, text="This enables bottom frame", command=enable)
button2.pack()
#Creates bottom frame
frame2 = ttk.LabelFrame(root, padding=(10,10,10,10))
frame2.grid(column=0, row=1, padx=10, pady=10)
frame2.state(statespec='disabled') #Causes error
entry = ttk.Entry(frame2)
entry.pack()
button2 = ttk.Button(frame2, text="button")
button2.pack()
root.mainloop()
這可能嗎?
我正在使用Tkinter 8.5和Python 3.3。
你的回答會更好。否則,我們必須逐行閱讀,尋找差異。 –
@BryanOakley公平點。我的答案現在更新以使其更清楚。 –
我必須將'state ='enable''改爲'state ='normal''才能使其工作。 – JPaget