Как сложить числа на tkinter?

from tkinter import *

window = Tk()
window.title("1 урок")      # заголовок
window.geometry('800x600')  # размер окна


def start():
    res = txt.get()
    res2 = txt2.get()
    res3 = txt3.get()

    if res.isdigit():
        res = int(res)
        lbl5.configure(text=res3)

    elif res2.isdigit():
        res2 = int(res2) + int(res)
        lbl5.configure(text=res3)

    elif res3.isdigit():
        res3 = int(res3) + int(res2)
        lbl5.configure(text=res3)

    else:
        lbl4.configure(text="Введите числа!")

def start2():
    txt.delete(0, 'end')
    txt2.delete(0, 'end')
    txt3.delete(0, 'end')


lbl = Label(window, text="Введите цисло: ",font=("Arial Bold", 10))
lbl.grid(column=1, row=0)

lbl2 = Label(window, text="Введите второе число: ",font=("Arial Bold", 10))
lbl2.grid(column=3, row=0)


lbl3 = Label(window, text="Введите третье число число: ",font=("Arial Bold", 10))
lbl3.grid(column=5, row=0)

lbl4 = Label(window, text="",font=("Arial Bold", 15))
lbl4.grid(column=3, row=5)

lbl5 = Label(window, text="",font=("Arial Bold", 10))
lbl5.grid(column=1, row=2)

txt = Entry(window, width=10)
txt.grid(column=2, row=0)

txt2 = Entry(window, width=10)
txt2.grid(column=4, row=0)

txt3 = Entry(window, width=10)
txt3.grid(column=6, row=0)

btn = Button(window, text="Сумма", command=start)
btn.grid(column=0, row=2)

btn2 = Button(window, text="Сброс", command=start2)
btn2.grid(column=2, row=2)


window.mainloop()

Ответы (1 шт):

Автор решения: S. Nick

Попробуйте так:

from tkinter import *


window = Tk()
window.title("1 урок")                # заголовок
window.geometry('800x600')            # размер окна

def start():
    res = txt.get()
    res2 = txt2.get()
    res3 = txt3.get()

    if res.isdigit() and res2.isdigit() and res3.isdigit():             # +
        lbl5.configure(text=f'{int(res) + int(res2) + int(res3)}')      # +
        lbl4.config(text='')                                            # +
    else:                                                     
        lbl4.configure(text="Введите числа!")
        lbl5.config(text='')                                            # +
    
def start2():
    txt.delete(0, 'end')
    txt2.delete(0, 'end')
    txt3.delete(0, 'end')
    
    lbl4.config(text='')                                                # +
    lbl5.config(text='')                                                # +   


lbl = Label(window, text="Введите цисло: ",font=("Arial Bold", 10))
lbl.grid(column=1, row=0)
lbl2 = Label(window, text="Введите второе число: ",font=("Arial Bold", 10))
lbl2.grid(column=3, row=0)
lbl3 = Label(window, text="Введите третье число число: ",font=("Arial Bold", 10))
lbl3.grid(column=5, row=0)

lbl4 = Label(window, text="",font=("Arial Bold", 15))
lbl4.grid(column=3, row=5)
lbl5 = Label(window, text="",font=("Arial Bold", 10))
lbl5.grid(column=1, row=2)

txt = Entry(window, width=10)
txt.grid(column=2, row=0)
txt2 = Entry(window, width=10)
txt2.grid(column=4, row=0)
txt3 = Entry(window, width=10)
txt3.grid(column=6, row=0)

btn = Button(window, text="Сумма", command=start)
btn.grid(column=0, row=2)
btn2 = Button(window, text="Сброс", command=start2)
btn2.grid(column=2, row=2)

window.mainloop()

введите сюда описание изображения

→ Ссылка