您的位置:首页 > 编程语言 > Python开发

熟悉python中的tkinter图形包--(写一个参数计算器)

2016-05-20 21:11 417 查看
对python也有个基础的了解 了,总想着做点什么一直苦于找不到好的实践方式,这不任务来了,需要做实验的计划方案,,方案中需要根据3个已知的参数计算其他的参数,以及稳定状态的参数,因此打算用这个来熟悉python了,虽然这个程序不怎么健壮,也没有将参数封装起来,但是让我基本熟悉了tkinter这个做gui的第三方包。不说了,直接上程序,有想详细了解的直接私信就好!

#coding:utf-8
from Tkinter import *
from traitlets.config.application import catch_config_error

root = Tk()
root.title('球磨机参数计算')

frame = Frame(root)
frame.pack()

framer = Frame(root)
framer.pack()

frame1 = Frame(root)
frame1.pack()

frame3 = Frame(root)
frame3.pack()

frame4 = Frame(root)
frame4.pack()

frame2 = Frame(root)
frame2.pack()

L1 = Label(frame, text="1质量")
L1.pack( side = LEFT)
E1 = Entry(frame, bd =5)
E1.pack(side = LEFT)

L2 = Label(frame, text="2质量")
L2.pack( side = LEFT)
E2 = Entry(frame, bd =5)
E2.pack(side = LEFT)

L3 = Label(frame, text="3质量")
L3.pack( side = LEFT)
E3 = Entry(frame, bd =5)
E3.pack(side = LEFT)

L4 = Label(frame, text="容积(L)")
L4.pack( side = LEFT)
E4 = Entry(frame, bd =5)
E4.insert(END, '200')
E4.pack(side = LEFT)
#-----------------------------------------------

rg = Label(framer, text="1密度")
rg.pack( side = LEFT)
rgg = Entry(framer, bd =5)
rgg.insert(END, '7900')
rgg.pack(side = LEFT)

rw = Label(framer, text="2密度")
rw.pack( side = LEFT)
rww = Entry(framer, bd =5)
rww.insert(END, '2200')
rww.pack(side = LEFT)

rs = Label(framer, text="3密度")
rs.pack( side = LEFT)
rss = Entry(framer, bd =5)
rss.insert(END, '1000')
rss.pack(side = LEFT)

jk = Label(framer, text="介空率")
jk.pack( side = LEFT)
jkk = Entry(framer, bd =5)
jkk.insert(END, '0.38')
jkk.pack(side = LEFT)

#-----------------------------------------------
L5 = Label(frame1, text="12比")
L5.pack( )
v5text = StringVar()
v5 = Entry(frame1, text = v5text)
v5.pack()

L6 = Label(frame1, text="123")
L6.pack( )
v6text = StringVar()
V6 = Entry(frame1 ,text = v6text )
V6.pack()

L7 = Label(frame1, text="充填率")
L7.pack( )
v7text = StringVar()
V7 = Entry(frame1 , text = v7text)
V7.pack()

L8 = Label(frame1, text="充填率12")
L8.pack( )
v8text = StringVar()
V8 = Entry(frame1 , text = v8text)
V8.pack()

var = StringVar()
label = Label( frame3, textvariable=var, relief=RAISED )
var.set("----------------------------------------转速恒定时的负荷-------------------------------------------")
label.pack()

l9 = Label(frame4, text="1负荷")
l9.pack( )
v9text = StringVar()
V9 = Entry(frame4 , text = v9text)
V9.pack()

l10 = Label(frame4, text="2负荷")
l10.pack( )
v10text = StringVar()
V10 = Entry(frame4 , text = v10text)
V10.pack()

l11 = Label(frame4, text="3负荷")
l11.pack()
v11text = StringVar()
V11 = Entry(frame4 , text = v11text)
V11.pack()

def cmp_f_mw(lb , lw , lm , vmill ,mg ,mw , ms,cont):
v5text.set('')
v5text.set(lm/(lm+lw))

def cmp_f_mb(lb , lw , lm , vmill ,mg ,mw , ms ,cont):
v6text.set('')
v6text.set((lm/mw)/((cont/(1-cont))*(lb/mg)))

def cmp_f_bf(lb, lw, lm, vmill, mg, mw, ms, cont):
f_bf = (((cont/(1-cont))*(lb/mg))+(lb/mg))/vmill
v7text.set('')
v7text.set(f_bf)

def cmp_f_bmw(lb, lw, lm, vmill, mg, mw, ms, cont):
bmw = (lm/mw + lw/mw + lb/mg)/vmill
v8text.set('')
v8text.set(bmw)

try:
def comput():
lb = E1.get()
lw = E2.get()
lm = E3.get()
vmill = E4.get()
mg = rgg.get()
mw = rww.get()
ms = rss.get()
cont = jkk.get()

lb = float(lb)
lw = float(lw)
lm = float(lm)
vmill = float(vmill)
mg = float(mg)
mw = float(mw)
ms = float(ms)
cont =float(cont)

#计算1
cmp_f_mw(lb , lw , lm , vmill ,mg ,mw , ms ,cont)
#计算2
cmp_f_mb(lb , lw , lm , vmill ,mg ,mw , ms ,cont)
#计算3
cmp_f_bf(lb , lw , lm , vmill ,mg ,mw , ms ,cont)
#计算充填率
cmp_f_bmw(lb , lw , lm , vmill ,mg ,mw , ms ,cont)
except EXCEPTION:
print 'jajjaja'

B = Button(frame2, text ="计算负荷参数", command = comput)
B.pack(side = LEFT)

def cmp_wl_fh(lb, lw, lm, vmill, mg, mw, ms, cont, lqb, mknd, jztc, tc):
lm = (tc*vmill)/((1/mw)+((1-mknd)/(mw*mknd)+((1-cont)/cont))*(1/(lqb*mw)))
v11text.set('')
v11text.set(lm)

def cmp_gq_fh(lb, lw, lm, vmill, mg, mw, ms, cont, lqb, mknd, jztc, tc):
lbc = (tc *vmill*mg*((1-cont)/cont))/(lb+((1-lw)/lw)*((mw*lb)/mw)+((1-cont)/cont))
v9text.set('')
v9text.set(lbc)

def cmp_sh_fh(lb, lw, lm, vmill, mg, mw, ms, cont, lqb, mknd, jztc, tc):
water =(tc*vmill)/(mknd/(mw*(1-mknd))+1/ms +((1-cont)*mknd)/(cont*mw*lqb*(1-mknd)))
v10text.set('')
v10text.set(water)

def computnow():
lqb = v5.get()
mknd = V6.get()
jztc = V7.get()
tc = V8.get()

lqb = float(lqb)
mknd = float(mknd)
jztc = float(jztc)
tc = float(tc)

lb = E1.get()
lw = E2.get()
lm = E3.get()
vmill = E4.get()
mg = rgg.get()
mw = rww.get()
ms = rss.get()
cont = jkk.get()

lb = float(lb)
lw = float(lw)
lm = float(lm)
vmill = float(vmill)
mg = float(mg)
mw = float(mw)
ms = float(ms)
cont =float(cont)

#1负荷
cmp_wl_fh(lb , lw , lm , vmill ,mg ,mw , ms ,cont,lqb,mknd,jztc,tc)
#2负荷
cmp_gq_fh(lb , lw , lm , vmill ,mg ,mw , ms ,cont,lqb,mknd,jztc,tc)
#3负荷
cmp_sh_fh(lb , lw , lm , vmill ,mg ,mw , ms ,cont,lqb,mknd,jztc,tc)

B = Button(frame2, text ="计算正常运转时的负荷", command = computnow)
B.pack(side = LEFT)

root.mainloop()
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: