代码:
结果:
代码解析:
def test(content): return content.isdigit() testCMD = root.register(test) e1 = Entry(frame,textvariable=n1,width=10,validate="key",\ validatecommand=(testCMD,'%P')).grid(row=0,column=0) e2 = Entry(frame,textvariable=n2,width=10,validate="key",\ validatecommand=(testCMD,'%P')).grid(row=0,column=2)
这一部分代码是为了让第一个和第二个输入框中只能输入数字,对于字母、汉字、特殊字符等
会进行判定不允许输入进输入框中
e3 = Entry(frame,textvariable=n3,width=10,state="readonly")\ .grid(row=0,column=4)
此行代码定义第三个输入框,但是其中的“ state="readonly" ”表示此输入框只允许进行读取和copy不允许对齐进行输入内容
def calc(): result = int(n1.get()) + int(n2.get()) n3.set(str(result))
定义计算过程与结果并将其进行类型转换方便后面输出结果
要是想简单的将此加法计算器改为其他类型的计算器,只需要在此步骤更改齐运算方式即可
Button(frame,text="计算结果",command=calc).grid(row=1,column=2,padx=5,pady=5) Button(frame,text="退出",command=frame.quit).grid(row=1,column=4,padx=5,pady=5)
定义两个按钮:输出结果和退出
注释:代码中的row以及column分别代表行和列,适当的调整可以使程序更加的美观
如下图:
图中的(0,0)分别代表着(row=0,column=0)也就是第0行,第0列
同理(1,4)代表(row=1,column=4),也即是第1行,第4列
要注意在python中row以及column的起始值是0