首页 > 解决方案 > 结果按钮消失并且条件代码不起作用

问题描述

我是 Python 新手,我已经超过 1 周无法解决这个问题。每次,我都尝试插入带有条件的代码,例如如果结果 = 零、打印('重新排序')或任何代码,结果按钮就会消失。条件代码也不起作用。我应该如何编写条件代码以使其工作并确保结果按钮不会消失。谢谢。下面是我的代码:

#import tkinter module
import tkinter as tk

#initialise the window manager
root = tk.Tk()
root.title("Inventory system menu")
canvas = tk.Canvas(root, height=400, width=500, bg="White")
frame=tk.Frame(root, bg="green")
frame.place(relwidth=0.9, relheight=0.9, relx=0.05, rely=0.05)

#define label widget
tk.Label(frame, font=("Helvetica", 20), text="Quantity:").grid(row=0)
tk.Label(frame, font=("Helvetica", 20), text="Price:").grid(row=1,column=0)
tk.Label(frame, font=("Helvetica", 20), text="Category:").grid(row=2,column=0)
tk.Label(frame, font=("Helvetica", 20), text="Description:").grid(row=3,column=0)

# define entry variables
Quantity = tk.StringVar()
Price = tk.StringVar()

# assign the StringVar to the entry widget text variables
Quantity= tk.Entry(frame, textvariable=Quantity)
Quantity.grid(row=0, column=1)
Price= tk.Entry(frame, textvariable=Price)
Price.grid(row=1, column=1)
Category= tk.Entry(frame, textvariable=Category)
Category.grid(row=2, column=1)
Description= tk.Entry(frame, textvariable=Description)
Description.grid(row=3, column=1)

#formula (relationship between quantity and price)
def generate():
  
  result = float(Quantity.get()) * float(Price.get())
  print(result)
  #result widget
generate=tk.Button(frame, text="result", height="2", width="8", fg="Black", bg="yellow",command=generate)
generate.grid(row=4, column=2)

#geometric management pack
canvas.pack()
root.mainloop()

标签: pythontkinterbuttonconditional-statements

解决方案


推荐阅读