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

对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()

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值