同求
因为如果没有master 会自己创建一个 Tk() 想问下,如何清空frame里面的所有控件 请教高人 如何改变frame下button的属性 如果直接在root下是可以的 见代码
from tkinter import *
root = Tk()
root.geometry('200x200')
root.resizable(width=False, height=False)
root.title('Button Test')
def click_me():
btn["text"] = "不可点"
btn['state'] = DISABLED
Label(root, text="button test").pack()
# btn被点击后,调用click_me函数,将btn文案修改为:不可点,状态修改为DISABLED(置灰状态,不可点击)
btn = Button(root, text="点我测试", command=click_me)
btn.pack()
btn1 = Button(root, text="我不可被点击", state=DISABLED)
btn1.pack()
root.mainloop()
但套在frame下 btn1 就找不到了 见代码 这段代码想在按下按钮后将确定按钮设置成disabled
from tkinter import *
master = Tk()
frame = Frame(master)
frame.pack(padx=10, pady=10)
v1 = StringVar()
v2 = StringVar()
v3 = StringVar()
def test(content):
return content.isdigit()
testCMD = master.register(test)
def callback():
result = int(v1.get()) + int(v2.get())
v3.set(str(result))
btn1['state']=DISABLED
#print(v1.get(),v2.get(),frame)
def dele():
v1.set("")
v2.set("")
v3.set("")
e1 = Entry(frame, textvariable=v1,width=10, validate="key", validatecommand=(testCMD,"%P")).grid(row=0,column=0)
l1 = Label(frame,text="+").grid(row=0,column=1)
e2 = Entry(frame, textvariable=v2,width=10, validate="key", validatecommand=(testCMD,"%P")).grid(row=0,column=2)
l2 = Label(frame,text="=").grid(row=0,column=3)
e3 = Entry(frame, textvariable=v3,width=10, state="readonly").grid(row=0,column=4)
btn1 = Button(frame, text="确定", command=callback).grid(row=1,column=2,pady=5)
btn2 = Button(frame, text="清空", command=dele).grid(row=1,column=4,pady=5)
master.mainloop()
------------------------------------------
Windows 10 专业版 | Python 3.7.6
------------------------------------------
【我的问题】
1、较早版本的教材中好像没有单独章节的Frame组件的介绍
2、视频教材中好像也没有看到
******************************
感谢大神不吝赐教,为新手解疑释惑。
赠人玫瑰,手有余香,好人一生平安! 学习打卡 我想学习
页:
1
[2]