让我先说一下,我只是编程的初学者。我刚刚开始使用Python,我遇到了一个我正在制作的小计算器项目的问题。
以下是代码:
from tkinter import *
root = Tk()
# ****Sum****
def get_sum(event):
num1 = int(num1Entry.get())
num2 = int(num2Entry.get())
sum = num1 + num2
num1Entry = Entry(root, width=20)
num1Entry.grid(row=0, column=0)
Label(root, text="+").grid(row=0, column=1)
num2Entry = Entry(root, width=20)
num2Entry.grid(row=0, column=2)
equalButton = Button(root, text="=")
equalButton.bind("<Button-1>", get_sum)
equalButton.grid(row=0, column=3)
sumEntry = Entry(root, width=20)
sumEntry.grid(row=0, column=4)
# ****Minus****
def get_minus(event):
n1 = int(n1Entry.get())
n2 = int(n2Entry.get())
minus = n1 - n2
n1Entry = Entry(root, width=20)
n1Entry.grid(row=1, column=0)
Label(root, text="-").grid(row=1, column=1)
n2Entry = Entry(root, width=20)
n2Entry.grid(row=1, column=2)
equal1Button = Button(root, text="=")
equal1Button.bind("<Button-1>", get_minus)
equal1Button.grid(row=1, column=3)
minusEntry = Entry(root, width=20)
minusEntry.grid(row=1, column=4)
root.mainloop()
正如你们中的一些人可能会注意到的那样,代码的第一部分(Sum部分)不是我的意思。我从这个网站上的某个地方复制了它(我不记得是谁以及何时确切)并且我想为它添加其他功能(比如' - ','*'或'/'),但我遇到了这个问题,我希望你们中的一些人可以帮助我。
有两个条目我输入数字,当我点击'='按钮时,它应该显示结果。 但是,当我点击“=”按钮时,没有任何反应。它会在颜色发生变化时记录点击,但结果不会显示。我不知道为什么,我希望你们中的一些人可以指出错误。
用控制台运行它或点击按钮时没有收到任何错误,所以我不知道错误到底在哪里。
请注意我还是Python的初学者
答案 0 :(得分:0)
你做的一切都正确,调用了函数并添加了数字。但是,您没有向用户显示任何内容。如果您将print(sum)
添加到功能的末尾,则会看到它已打印出来。或者,我假设您要将其插入等号输入:
def get_sum(event=None):
num1 = int(num1Entry.get())
num2 = int(num2Entry.get())
sum = num1 + num2
print('sum is', sum)
sumEntry.delete(0, END) # clear
sumEntry.insert(0, sum)
此外,您应该使用command
参数,而不是bind
:
equalButton = Button(root, text="=", command=get_sum)