|
|
发表于 2017-12-18 18:55:07
|
显示全部楼层
- from tkinter import *
- root=Tk()
- root.title("TS-计算体积")
- #用来设置初始窗口的位置和大小,前面的是大小,后面是初始位置
- root.geometry("600x400+120+50")
- R1=StringVar()
- H1=StringVar()
- V1=StringVar()
- def test1(content):
- if content == "" or content.isdigit():
- return True
- else:
- e1.delete(0,END)
- e1.insert(0,"输入错误信息")
- return False
- def test2(content):
- if content == "" or content.isdigit():
- return True
- else:
- e2.delete(0,END)
- e2.insert(0,"输入错误信息")
- return False
- testCMD1=root.register(test1)
- testCMD2=root.register(test2)
- Label(root,text="圆筒半径R(m):").place(x=20,y=20)
- Label(root,text="圆筒高度H(m):").place(x=20,y=50)
- Label(root,text="圆筒体积V(m3):").place(x=20,y=80)
- e1 = Entry(root,textvariable=R1,width=15,validate="focusout",\
- validatecommand=(testCMD1,"%P"))
- e1.place(x=180,y=20)
- e2 = Entry(root,textvariable=H1,width=15,validate="focusout",\
- validatecommand=(testCMD2,"%P"))
- e2.place(x=180,y=50)
- e3 = Entry(root,textvariable=V1,width=15,state = "readonly")
- e3.place(x=180,y=80)
- def calc():
- result=int(R1.get())*int(R1.get())*3.1416*int(H1.get())
- V1.set(result)
- Button(root,text="计算",command=calc).place(x=100,y=110)
- mainloop()
复制代码
在你的基础上简单的修改了一下,希望能给你提供思路,其实我都不知道这个 root.register(test) 是什么作用的。 |
|