使用tkinter设计一个简单的加法计算器:
(1)在数字输入框中,只能输入数字,无法输入其他字符,当输入其他字符时在输入框中不会显示并自动删除这些非数字字符。
(2)结果框设置为只读,这样计算结果无法人为去干扰。
代码如下:
from tkinter import * root=Tk() # 计算器 frame=Frame(root) frame.pack(padx=10,pady=10) v1=StringVar() v2=StringVar() v3=StringVar() def test(content): return content.isdigit() testcmd=root.register(test) e1=Entry(frame,width=10,textvariable=v1,validate="key",\ validatecommand=(testcmd,'%P')).grid(row=0,column=0) Label(frame,text="+").grid(row=0,column=1) e2=Entry(frame,width=10,textvariable=v2,validate="key",\ validatecommand=(testcmd,'%P')).grid(row=0,column=2) Label(frame,text="=").grid(row=0,column=3) e3=Entry(frame,width=10,textvariable=v3,state="readonly").grid(row=0,column=4) def calc(): result=int(v1.get())+int(v2.get()) v3.set(str(result)) Button(frame,text="计算结果",command=calc).grid(row=1,column=2,pady=5) mainloop()
运行结果为: