【问题标题】:Can anyone help me to find mistake in my python GUI code?谁能帮我找出我的 python GUI 代码中的错误?
【发布时间】:2019-07-26 20:26:22
【问题描述】:
def square():
    def calculate():
        global area
        global perimeter
        side = entry_variable.get()
        area = side * side
        area_variable.set(area)
        perimeter = 4 * side
        perimeter_variable.set(perimeter)
root = Tk()
root.minsize(width=400, height=400)
root.maxsize(width=400, height=400)
root.config(bg="Black")
entry_variable = IntVar()
area_variable = IntVar()
perimeter_variable = IntVar()

label1 = Label(root, text="", font=('Arial', 15, 'bold'), fg="white", bg='Black')
label1.grid()
label0 = Label(root, text="Enter the Side's measurement", font=('Arial', 15, 'bold'), fg="white", bg='Black')
label0.grid(row=1)
label00 = Label(root, text="", font=('Arial', 15, 'bold'), fg="white", bg='Black')
label00.grid(row=3)
entry1 = Entry(root, font=('Arial', 15, 'bold'), justify=RIGHT, textvariable=entry_variable, fg='black')
entry1.grid(row=2)
label2 = Label(root, text="Perimeter of the Square", font=('Arial', 15, 'bold'), fg="white", bg='Black')
label2.grid(row=5)
label3 = Label(root, text="Area of the Square", font=('Arial', 15, 'bold'), fg="white", bg='Black')
label3.grid(row=7)
entry2 = Entry(root, font=('Arial', 15, 'bold'), fg='black', justify=RIGHT, textvariable=perimeter_variable,
               state='disabled')
entry2.grid(row=6)
entry3 = Entry(root, font=('Arial', 15, 'bold'), fg='black', justify=RIGHT, textvariable=area_variable,
               state='disabled')
entry3.grid(row=8)
btn = Button(root, font=('Arial', 15, 'bold'), text='Calculate', bd=10, command=calculate)
btn.grid(row=4)

我创建了一个基本的 GUI 来计算正方形面积和方法。 我在另一个 GUI 中使用它(它工作得很好),我使用一个按钮访问它,这就是我创建它的原因。 它不会给出任何错误,但也不会执行结果。 我比较大,所以我不太熟悉 OOPS!

【问题讨论】:

    标签: python class user-interface tkinter square


    【解决方案1】:

    没有必要定义两个嵌套函数。这样定义一个函数:

    def calculate():
    
        side = entry_variable.get()
        area = side * side
        area_variable.set(area)
        perimeter = 4 * side
        perimeter_variable.set(perimeter)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-18
      相关资源
      最近更新 更多