首页 > 解决方案 > 您如何在顶层窗口中使用各种变量进行计算?

问题描述

我正在为我的公司创建一个计算器应用程序,该应用程序将用于计算某些参数。由于有各种参数及其各自的公式,我决定为每个参数创建顶层窗口——所有参数都链接到相应的按钮。但我无法让这些功能在顶级窗口中工作。

我习惯def calculate():了无济于事

我希望它能够工作,因为它在普通窗口中工作,但在顶级窗口中失败。

def open():  
    ldl_window = Toplevel(root)
    ldl_window.geometry('500x500')

def calculate():

    tc = eval(totalChol.get())
    hdl=eval (hdLipo.get())
    tg=eval (trig.get ()) 
    ldl =tc-((hdl/2)+tg)
    output_label.configure(text = 'LDL: {:.1f}'.format(ldl))
    totalChol.delete(0,END)
    hdLipo.delete(0,END)
    trig.delete(0,END)

    output_label = Label(font=('Verdana', 16), bg='grey',fg='white')
    tc_label = Label(ldl_window,text='TC',font=('Verdana', 15))
    tc_label.grid(row=0, column=0)
    hdl_label = Label(ldl_window,text='HDL',font=('Verdana', 15))
    hdl_label.grid(row=1, column=0)
    tg_label = Label(ldl_window,text='TG',font=('Verdana', 15))
    tg_label.grid(row=2, column=0)

    totalChol = Entry(ldl_window,font=('Verdana', 15), width=4)
    totalChol.grid(row=0, column=1)
    hdLipo= Entry(ldl_window,font=('Verdana', 15), width=4)
    hdLipo.grid(row=1,column=1)
    trig= Entry(ldl_window,font=('Verdana', 15), width=4)
    trig.grid (row=2,column=1)

    calc_button = Button(ldl_window,text='CALC', font= 
    ('CALIBRI',15),command=calculate,bg='blue',fg='white')
    calc_button.grid(row=3, column=0)

    output_label.grid(row=3, column=1)

    btn = Button(root, text = "Calculate LDL", command = open, 
    bg='blue',fg='white',font=('CALIBRI', 12))  
    btn.grid(row=3, column=0)

标签: pythontkinterpython-imaging-library

解决方案


推荐阅读