在 Python Tkinter 计算器中,用户需要能够通过退格键删除最后一个数字或符号,清除按钮可以清除整个方程式,退出键可以退出程序。然而,在给定代码中,退格键只能删除数字前面的符号,而不能删除数字本身。此外,没有清除按钮和退出键。
解决方案
为了解决这些问题,需要修改给定代码。以下是解决方案:
1. 添加退格键
def backspaceAction(self):
text = self.input.get()
if len(text) > 0:
self.input.delete(len(text) - 1, END)
将此函数添加到 App 类中,并在 btn_frame 中为退格键添加一个按钮,如下所示:
btnback = button(self.btn_frame, "Back", self.backspaceAction)
# ...
# 其他按键的代码
# ...
2. 添加清除按钮
def clearAction(self):
self.input.delete(0, END)
将此函数添加到 App 类中,并在 btn_frame 中为清除按钮添加一个按钮,如下所示:
btnclear = button(self.btn_frame, "C", self.clearAction)
# ...
# 其他按键的代码
# ...
3. 添加退出键
def quitAction(self):
root.destroy()
将此函数添加到 App 类中,并在 calc_frame 中为退出按钮添加一个按钮,如下所示:
self.btnquit = button(calc_frame,