Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #Author: Anthony Antognazzi
- #Date: 11/24/2017
- #Version: 1.0.0
- import tkinter
- class MyGUI:
- def __init__(self):
- self.main_window = tkinter.Tk()
- self.total = 0
- self.last = 0
- self.press = 0
- self.addition = False
- self.subtraction = False
- self.multiplication = False
- self.division = False
- self.display = 0
- self.top_frame = tkinter.Frame(self.main_window)#Output box
- self.row1_frame = tkinter.Frame(self.main_window) #1,2,3,C
- self.row2_frame = tkinter.Frame(self.main_window) #4,5,6,/
- self.row3_frame = tkinter.Frame(self.main_window) #7,8,9,X
- self.row4_frame = tkinter.Frame(self.main_window) #0,+,-,=
- self.value = tkinter.IntVar()
- self.output = tkinter.Label(self.top_frame, textvariable=self.value)
- self.one =tkinter.Button(self.row1_frame, text='1', command=self.press_one)
- self.two =tkinter.Button(self.row1_frame, text='2', command=self.press_two)
- self.three =tkinter.Button(self.row1_frame, text='3', command=self.press_three)
- self.c = tkinter.Button(self.row1_frame, text='C', command=self.press_c)
- self.div =tkinter.Button(self.row2_frame, text='/', command=self.press_div)
- self.four =tkinter.Button(self.row2_frame, text='4', command=self.press_four)
- self.five =tkinter.Button(self.row2_frame, text='5', command=self.press_five)
- self.six =tkinter.Button(self.row2_frame, text='6', command=self.press_six)
- self.mult =tkinter.Button(self.row3_frame, text='X', command=self.press_mult)
- self.seven =tkinter.Button(self.row3_frame, text='7', command=self.press_seven)
- self.eight =tkinter.Button(self.row3_frame, text='8', command=self.press_eight)
- self.nine =tkinter.Button(self.row3_frame, text='9', command=self.press_nine)
- self.zero =tkinter.Button(self.row4_frame, text='0', command=self.press_zero)
- self.plus =tkinter.Button(self.row4_frame, text='+', command=self.press_plus)
- self.minus =tkinter.Button(self.row4_frame, text='-', command=self.press_minus)
- self.equals =tkinter.Button(self.row4_frame, text='=', command=self.press_equal)
- self.one.place(x = 1000, y = 30)
- self.output.pack(side='top')
- self.one.pack(side='left')
- self.two.pack(side='left')
- self.three.pack(side='left')
- self.c.pack(side='left')
- self.four.pack(side='left')
- self.five.pack(side='left')
- self.six.pack(side='left')
- self.div.pack(side='left')
- self.seven.pack(side='left')
- self.eight.pack(side='left')
- self.nine.pack(side='left')
- self.mult.pack(side='left')
- self.plus.pack(side='left')
- self.minus.pack(side='left')
- self.zero.pack(side='left')
- self.equals.pack(side='left')
- self.top_frame.pack()
- self.row1_frame.pack()
- self.row2_frame.pack()
- self.row3_frame.pack()
- self.row4_frame.pack()
- tkinter.mainloop()
- def press_one(self):
- self.press = 1
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- #self.last = self.display
- def press_two(self):
- self.press = 2
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- def press_three(self):
- self.press = 3
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- def press_four(self):
- self.press = 4
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- def press_five(self):
- self.press = 5
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- def press_six(self):
- self.press = 6
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- def press_seven(self):
- self.press = 7
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- def press_eight(self):
- self.press = 8
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- def press_nine(self):
- self.press = 9
- self.display = (self.display*10)+ self.press
- self.value.set(self.display)
- def press_zero(self):
- self.press = 0
- self.display = self.display*10
- self.value.set(self.display)
- def press_plus(self):
- self.addition = True
- self.last = self.display+self.last
- self.display = 0
- self.value.set(self.last)
- def press_minus(self):
- self.subtraction = True
- if self.last == 0:
- self.last = self.display
- else:
- self.last = self.last-self.display
- self.display = 0
- self.value.set(self.last)
- def press_div(self):
- print("Placeholder DIV")
- self.division = True
- self.last = self.display
- #if self.display == 0:
- #self.last = 0
- #else:
- #self.last = self.last/self.display
- self.display = 0
- self.value.set(self.display)
- def press_mult(self):
- self.multiplication = True
- if self.last == 0:
- self.last = self.last+self.display
- else:
- self.last = self.last*self.display
- self.display = 0
- self.value.set(self.last)
- def press_equal(self):
- if self.addition == True:
- self.total = self.total+self.display+self.last
- self.value.set(self.total)
- self.last = 0
- self.display = 0
- self.addition = False
- if self.subtraction == True:
- self.total = self.total+self.last-self.display
- self.value.set(self.total)
- self.last = 0
- self.display = 0
- self.subtraction = False
- if self.multiplication == True:
- if self.total == 0:
- self.total = self.last*self.display
- else:
- self.total = self.total*self.display
- self.value.set(self.total)
- self.last = 0
- self.display = 0
- self.multiplication = False
- if self.division == True:
- if self.total == 0:
- if self.display != 0:
- self.total = self.last/self.display
- else:
- print("Null")
- self.press_c()
- else:
- if self.display != 0:
- self.total = self.total/self.display
- else:
- print("Null")
- self.press_c()
- self.value.set(self.total)
- self.display = 0
- self.last = 0
- self.division = False
- def press_c(self):
- self.total = 0
- self.last = 0
- self.display = 0
- self.value.set(0)
- my_gui = MyGUI()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement