GUI Calculator using python



from tkinter import *

def click(event):
global scrvalue
text = event.widget.cget("text")
if text == "=":
if scrvalue.get().isdigit():
value = int(scrvalue.get())
else:
try:
value = eval(screen.get())
except:
value = "Error!"
scrvalue.set(value)
screen.update()
elif text == "C":
scrvalue.set("")
screen.update()
else:
scrvalue.set(scrvalue.get() + text)
scrvalue.update()


window = Tk()
window.title("Calculator by ./Rakshit")
window.geometry("744x600")

scrvalue = StringVar()
scrvalue.set("")
screen = Entry(window,textvar=scrvalue,font="lucida 40 bold")
screen.pack(fill=X,ipadx=8,padx=10,pady=10)

frame = Frame(window,bg="yellow")
button = Button(frame,text="9",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="8",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="7",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="/",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=16,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="C",padx=21,pady=18,font="lucida 35 bold",bg='red')
button.pack(side=LEFT,padx=16,pady=10)
button.bind("<Button-1>", click)

frame.pack(anchor=W)

frame = Frame(window,bg="yellow")
button = Button(frame,text="6",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="5",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="4",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="*",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=13,pady=10)
button.bind("<Button-1>", click)

frame.pack(anchor=W)

frame = Frame(window,bg="yellow")
button = Button(frame,text="3",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="2",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="1",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="-",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=15,pady=10)
button.bind("<Button-1>", click)

frame.pack(anchor=W)

frame = Frame(window,bg="yellow")
button = Button(frame,text="0",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=10,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text=".",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=18,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="=",padx=21,pady=18,font="lucida 35 bold",bg='green')
button.pack(side=LEFT,padx=5,pady=10)
button.bind("<Button-1>", click)

button = Button(frame,text="+",padx=21,pady=18,font="lucida 35 bold")
button.pack(side=LEFT,padx=6,pady=10)
button.bind("<Button-1>", click)

frame.pack(anchor=W)

window.mainloop()

Comments