def __init__(self,master): self.master = master self.box_value = StringVar() self.connection = False self.sizeofgraph = StringVar() self.sizeofgraph = "Default Size is 10 Meters!" self.connectionstatus = StringVar() self.connectionstatus = "Serial Port is Not Connected!" #Change the name of the title master.wm_title("Vector Mapping 0.1 - SMT Research Ltd.") #Define all buttons self.button_1 = Button(master, text = "Start", font = ("comic sans ms",20)) #, font = ("comic sans ms",25) self.button_2 = Button(master, text = "Stop", font = ("comic sans ms",20)) self.button_3 = Button(master, text = "Confirm") self.button_4 = Button(master, text = "Up") self.button_5 = Button(master, text = "Down") self.button_6 = Button(master, text = "Left") self.button_7 = Button(master, text = "Right") self.button_8 = Button(master, text = "Rescan") self.button_9 = Button(master, text = "Connect") self.button_10 = Button(master, text = "Activate") #, font = ("comic sans ms",25) self.button_11 = Button(master, text = "Cancel") self.label_1 = Label(master, text = "Set Height&Width(m)",bg ='white', font = ("comic sans ms", 15, "bold")) self.label_2 = Label(master, text = "Manual Control Panel",bg ='white', font = ("comic sans ms", 15, "bold")) self.label_3 = Label(master, text = "Serial Port Select",bg ='white', font = ("comic sans ms", 15, "bold")) self.label_4 = Label(self.master, text = self.connectionstatus, font = ("Helvetica", 12, "italic")) self.label_5 = Label(self.master, text = self.sizeofgraph, font = ("Helvetica", 12, "italic")) self.entry_1 = Entry(master) self.box = Combobox(master, textvariable = self.box_value, state ='readonly') self.box['values'] = Serialport.serial_Ports() self.box.current(0) #Bind all widgets to functions self.button_1.bind("<Button-1>",self.bindingStart) self.button_2.bind("<Button-1>",self.bindingStop) self.button_3.bind("<Button-1>",self.bindingConfirm) self.button_4.bind("<Button-1>",self.bindingUp) self.button_5.bind("<Button-1>",self.bindingDown) self.button_6.bind("<Button-1>",self.bindingLeft) self.button_7.bind("<Button-1>",self.bindingRight) self.button_8.bind("<Button-1>",self.bindingRescan) self.button_9.bind("<Button-1>",self.bindingConnect) self.button_10.bind("<Button-1>",self.bindingActivate) self.button_11.bind("<Button-1>",self.bindingCancel) self.master.bind("<Left>", self.bindingLeft) self.master.bind("<Right>", self.bindingRight) self.master.bind("<Up>", self.bindingUp) self.master.bind("<Down>", self.bindingDown) # Grid Layout for all wigets # Start and Stop button layout self.button_1.grid(row = 0, rowspan = 2, column = 81, ipadx = 10, sticky = W+E+N+S) #Start button,ipadx = 20, ipady = 20 , rowspan = 9, sticky = W+E+N+S self.button_2.grid(row = 0, rowspan = 2,column = 82,ipadx = 10, sticky = W+E+N+S) #Stop button, ipadx = 20, ipady = 20 , rowspan = 9 , sticky = W+E+N+S #Set Height and Width Layout self.label_1.grid(row = 10, column = 81, columnspan = 2, sticky = S) #Height&Width Label self.entry_1.grid(row = 11, column = 81, columnspan = 2) #Blank space Entry self.label_5.grid(row = 12, column = 81, columnspan = 2, sticky = N) self.button_3.grid(row = 13, column = 81, columnspan = 2) #Confirm button #Serial Port Select self.label_3.grid(row = 20, column = 81, columnspan = 2, sticky = S) #Serial Port Select self.box.grid(row = 21, column = 81, columnspan = 2) #Combobox for serial ports self.label_4.grid(row = 22, column = 81, columnspan = 2, sticky = N) #connection message self.button_8.grid(row = 23, column = 81, sticky = E) #Rescan Button self.button_9.grid(row = 23, column = 82, sticky = W) #Connect Button #Control Panel Layout self.label_2.grid( row = 50, column = 81, columnspan = 2, sticky = S) #Manual Control Panel Label self.button_10.grid(row = 52, column = 81, sticky = W+E+N+S) self.button_11.grid(row = 52,column = 82, sticky = W+E+N+S) self.button_4.grid(row = 54, column = 81, columnspan = 2) #Up button self.button_6.grid(row = 55, column = 81) #Left Button self.button_7.grid(row = 55, column = 82) #Right Button self.button_5.grid(row = 56, column = 81, columnspan = 2) #Down Button self.master.update()
def bindingRescan(self,event): #update available serial ports self.box['values'] = Serialport.serial_Ports()