Как добавить кнопку удаления в калькулятор python? - PullRequest
0 голосов
/ 30 января 2020

Мне нужна помощь, чтобы добавить кнопку удаления в калькулятор python. Я попробовал другие методы, предложенные на сайте, но они не сработали. Я был бы очень признателен, если бы вы могли помочь мне, поскольку я хотел бы знать, как это сделать для будущих проектов. Вот мой код:

from tkinter import*



def btnClick(numbers):
    global operator
    operator=operator + str(numbers)
    text_Input.set(operator)

def btnClearDisplay() :
    global operator
    operator=""
    text_Input.set("")

def btnEqualsInput():
    global operator
    sumup=str(eval(operator))
    text_Input.set(sumup)
    operator=""

def backspace(self):
#check if all has been removed
#make sure you import the re module
    if re.match(r'\d$', self.current):
        self.display(0)
        self.new_num = True
    else:
        self.current = self.current[:-1]    
        self.display(self.current)

cal = Tk()
cal.title("Calculator")
operator=""
text_Input =StringVar()

txtDisplay = Entry(cal,font=('arial black', 20,'bold') , textvariable=text_Input, bd=30, insertwidth=6,
bg="powder blue", justify='right').grid(columnspan=6)

btn1=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="1",command=lambda:btnClick(1), bg="powder blue",).grid(row=1,column=0)

btn2=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="2",command=lambda:btnClick(2), bg="powder blue").grid(row=1,column=1)

btn3=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="3",command=lambda:btnClick(3), bg="powder blue").grid(row=1,column=2)

Addition=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="+",command=lambda:btnClick("+"), bg="powder blue").grid(row=1,column=3)
#===================================================================================

btn4=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="4",command=lambda:btnClick(4), bg="powder blue").grid(row=2,column=0)

btn5=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="5",command=lambda:btnClick(5), bg="powder blue").grid(row=2,column=1)

btn6=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,
            text="6",command=lambda:btnClick(6), bg="powder blue").grid(row=2,column=2)

Subtraction=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="-",command=lambda:btnClick("-"), bg="powder blue").grid(row=2,column=3)

#===================================================================================

btn7=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="7",command=lambda:btnClick(7), bg="powder blue").grid(row=3,column=0)

btn8=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="8",command=lambda:btnClick(8), bg="powder blue").grid(row=3,column=1)

btn9=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="9",command=lambda:btnClick(9), bg="powder blue").grid(row=3,column=2)

Multiplication=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="x",command=lambda:btnClick("x"), bg="powder blue").grid(row=3,column=3)

#===================================================================================

Clear=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="CE",command= btnClearDisplay, bg="powder blue").grid(row=4,column=0)

btn0=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="0",command=lambda:btnClick(0), bg="powder blue").grid(row=4,column=1)

EQUALS=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="=",command=btnEqualsInput, bg="powder blue").grid(row=4,column=3)

Division=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="÷",command=lambda:btnClick("÷"), bg="powder blue").grid(row=4,column=2)

#===================================================================================

Delete=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'),
            text="÷",command=lambda:btnClick("÷"), bg="powder blue").grid(row=4,column=2)

cal.mainloop()

Спасибо. Если бы вы могли мне помочь, я был бы очень благодарен.

1 Ответ

1 голос
/ 30 января 2020

Вот функция кнопки Удалить:

def btnDelete():
    global operator
    operator=operator[:-1]
    text_Input.set(operator)

И измените

Delete=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'), text="÷",command=lambda:btnClick("÷"), bg="powder blue").grid(row=4,column=2) на

Delete=Button(cal,padx=16,bd=8, fg="black",font=('arial black', 20,'bold'), text="Delete",command=btnDelete, bg="powder blue").grid(row=4,column=2)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...