class ComportConfig(): def __init__(self, master=None): _bgcolor = 'wheat' # X11 color: #f5deb3 _fgcolor = '#000000' # X11 color: 'black' _compcolor = '#d9d9d9' # X11 color: 'gray85' _ana1color = '#d9d9d9' # X11 color: 'gray85' _ana2color = '#d9d9d9' # X11 color: 'gray85' self.style = ttk.Style() if sys.platform == "win32": self.style.theme_use('winnative') self.style.configure('.',background=_bgcolor) self.style.configure('.',foreground=_fgcolor) self.style.configure('.',font="TkDefaultFont") self.style.map('.',background= [('selected', _compcolor), ('active',_ana2color)]) master.configure(background="#d0d0d0") master.configure(highlightbackground="#d9d9d9") master.configure(highlightcolor="black") self.btn_Save = Button(master) self.btn_Save.place(relx=0.34, rely=0.74, height=24, width=87) self.btn_Save.configure(activebackground="#c0c0c0") self.btn_Save.configure(activeforeground="#000000") self.btn_Save.configure(background="#d0d0d0") # self.btn_Save.configure(command=comportconfig_support.Close) self.btn_Save.configure(command=comportconfig_support.Close) self.btn_Save.configure(disabledforeground="#a3a3a3") self.btn_Save.configure(foreground="#000000") self.btn_Save.configure(highlightbackground="#d0d0d0") self.btn_Save.configure(highlightcolor="black") self.btn_Save.configure(pady="0") self.btn_Save.configure(text='''Save&Close''') self.btn_Cancel = Button(master) self.btn_Cancel.place(relx=0.68, rely=0.74, height=24, width=87) self.btn_Cancel.configure(activebackground="#d0d0d0") self.btn_Cancel.configure(activeforeground="#000000") self.btn_Cancel.configure(background="#d0d0d0") self.btn_Cancel.configure(command=comportconfig_support.cancel) self.btn_Cancel.configure(disabledforeground="#a3a3a3") self.btn_Cancel.configure(foreground="#000000") self.btn_Cancel.configure(highlightbackground="#d0d0d0") self.btn_Cancel.configure(highlightcolor="black") self.btn_Cancel.configure(pady="0") self.btn_Cancel.configure(text='''Cancel''') self.Labelframe1 = LabelFrame(master) self.Labelframe1.place(relx=0.1, rely=0.06, relheight=0.58 , relwidth=0.86) self.Labelframe1.configure(relief=GROOVE) self.Labelframe1.configure(foreground="black") self.Labelframe1.configure(text='''Comport settings''') self.Labelframe1.configure(background="#d0d0d0") self.Labelframe1.configure(highlightbackground="#d9d9d9") self.Labelframe1.configure(highlightcolor="black") self.Labelframe1.configure(width=255) self.Label1 = Label(self.Labelframe1) self.Label1.place(relx=0.04, rely=0.21, height=21, width=54) self.Label1.configure(activebackground="#f9f9f9") self.Label1.configure(activeforeground="black") self.Label1.configure(background="#d0d0d0") self.Label1.configure(disabledforeground="#a3a3a3") self.Label1.configure(foreground="#000000") self.Label1.configure(highlightbackground="#d9d9d9") self.Label1.configure(highlightcolor="black") self.Label1.configure(text='''Comport''') self.Label2 = Label(self.Labelframe1) self.Label2.place(relx=0.04, rely=0.53, height=21, width=53) self.Label2.configure(activebackground="#f9f9f9") self.Label2.configure(activeforeground="black") self.Label2.configure(background="#d0d0d0") self.Label2.configure(disabledforeground="#a3a3a3") self.Label2.configure(foreground="#000000") self.Label2.configure(highlightbackground="#d9d9d9") self.Label2.configure(highlightcolor="black") self.Label2.configure(text='''Baudrate''') comportconfig_support.Readconfig() baudrateindex = self.find_index(comportconfig_support.localserialconfig['baudrate'], comportconfig_support.cbaudrates) # check if baudrate in list if baudrateindex < 0: baudrateindex = 0 comportindex = self.find_index(comportconfig_support.localserialconfig['comport'], listports.serial_ports()) # check if baudrate in list # comportindex = self.find_index(comportconfig_support.localserialconfig['comport'], # serial.tools.list_ports.comports() ) # check if baudrate in list if comportindex < 0: comportindex = 0 print('Config: ', comportconfig_support.localserialconfig) self.tc_baudrate= StringVar() self.tc_baudrate = ttk.Combobox(self.Labelframe1, textvariable=self.tc_baudrate) self.tc_baudrate.place(relx=0.35, rely=0.21, relheight=0.35 , relwidth=0.56) self.tc_baudrate['values'] = comportconfig_support.cbaudrates self.tc_baudrate.current(baudrateindex) self.tc_baudrate.configure(takefocus="") self.tc_baudrate.bind('<<ComboboxSelected>>',self.set_baudrate) self.tc_comports= StringVar() self.tc_comport = ttk.Combobox(self.Labelframe1, textvariable=self.tc_comports) self.tc_comport.place(relx=0.35, rely=0.53, relheight=0.35 , relwidth=0.56) self.tc_comport['values']= listports.serial_ports() self.tc_comport.current(comportindex) self.tc_comport.bind('<<ComboboxSelected>>',self.set_comport) self.tc_comport.configure(takefocus="") print ('baudrate: ', self.tc_baudrate['values']) print ('ports: ', listports.serial_ports()) def set_baudrate(self, event): comportconfig_support.localserialconfig["baudrate"] = self.tc_baudrate.get() print('Set baudrate ', comportconfig_support.localserialconfig["baudrate"]) #, ComportConfig.tc_newbaudrate) print(comportconfig_support.localserialconfig) def set_comport(self, event): comportconfig_support.localserialconfig["comport"] = self.tc_comports.get() print('Set comport', comportconfig_support.localserialconfig["comport"]) print(comportconfig_support.localserialconfig) def find_index(self, value, qlist): # find index of value in qlist and return index if found or -1 if not found try: idx = qlist.index(value) except ValueError: idx = -1 print('find_index: ', idx, ' Value: ' , value , ' list: ', qlist) return idx
p=events() makeData() root=tkinter.Tk() root.title("学生信息管理系统") root.geometry("330x200") tkinter.Label(root,text=('学号'),width=15,height=3).place(x=4,y=0) tkinter.Label(root,text=('名字'),width=15,height=3).place(x=4,y=35) tkinter.Label(root,text=('成绩'),width=15,height=3).place(x=4,y=70) user_id = StringVar() user_id=tkinter.Entry(root,width=25,textvariable=user_id) user_id.place(x=90,y=16) user_name = StringVar() user_name=tkinter.Entry(root,width=25,textvariable=user_name) user_name.place(x=90,y=53) user_source = StringVar() user_source=tkinter.Entry(root,width=25,textvariable=user_source) user_source.place(x=90,y=86) tkinter.Button(root,text='使用说明',width=10,command=p.learn).place(x=248,y=20) tkinter.Button(root,text='重置',width=10,command=p.backspace).place(x=248,y=73) tkinter.Button(root,text='添加',width=8,command=p.submit).place(x=10,y=135) tkinter.Button(root,text='删除',width=8,command=p.delete).place(x=90,y=135) tkinter.Button(root,text='查询',width=8,command=p.check).place(x=175,y=135) tkinter.Button(root,text='退出',width=8,command=root.destroy).place(x=255,y=135)
class ComportConfig(): def __init__(self, master=None): _bgcolor = 'wheat' # X11 color: #f5deb3 _fgcolor = '#000000' # X11 color: 'black' _compcolor = '#d9d9d9' # X11 color: 'gray85' _ana1color = '#d9d9d9' # X11 color: 'gray85' _ana2color = '#d9d9d9' # X11 color: 'gray85' self.style = ttk.Style() if sys.platform == "win32": self.style.theme_use('winnative') self.style.configure('.', background=_bgcolor) self.style.configure('.', foreground=_fgcolor) self.style.configure('.', font="TkDefaultFont") self.style.map('.', background=[('selected', _compcolor), ('active', _ana2color)]) master.configure(background="#d0d0d0") master.configure(highlightbackground="#d9d9d9") master.configure(highlightcolor="black") self.btn_Save = Button(master) self.btn_Save.place(relx=0.34, rely=0.74, height=24, width=87) self.btn_Save.configure(activebackground="#c0c0c0") self.btn_Save.configure(activeforeground="#000000") self.btn_Save.configure(background="#d0d0d0") # self.btn_Save.configure(command=comportconfig_support.Close) self.btn_Save.configure(command=comportconfig_support.Close) self.btn_Save.configure(disabledforeground="#a3a3a3") self.btn_Save.configure(foreground="#000000") self.btn_Save.configure(highlightbackground="#d0d0d0") self.btn_Save.configure(highlightcolor="black") self.btn_Save.configure(pady="0") self.btn_Save.configure(text='''Save&Close''') self.btn_Cancel = Button(master) self.btn_Cancel.place(relx=0.68, rely=0.74, height=24, width=87) self.btn_Cancel.configure(activebackground="#d0d0d0") self.btn_Cancel.configure(activeforeground="#000000") self.btn_Cancel.configure(background="#d0d0d0") self.btn_Cancel.configure(command=comportconfig_support.cancel) self.btn_Cancel.configure(disabledforeground="#a3a3a3") self.btn_Cancel.configure(foreground="#000000") self.btn_Cancel.configure(highlightbackground="#d0d0d0") self.btn_Cancel.configure(highlightcolor="black") self.btn_Cancel.configure(pady="0") self.btn_Cancel.configure(text='''Cancel''') self.Labelframe1 = LabelFrame(master) self.Labelframe1.place(relx=0.1, rely=0.06, relheight=0.58, relwidth=0.86) self.Labelframe1.configure(relief=GROOVE) self.Labelframe1.configure(foreground="black") self.Labelframe1.configure(text='''Comport settings''') self.Labelframe1.configure(background="#d0d0d0") self.Labelframe1.configure(highlightbackground="#d9d9d9") self.Labelframe1.configure(highlightcolor="black") self.Labelframe1.configure(width=255) self.Label1 = Label(self.Labelframe1) self.Label1.place(relx=0.04, rely=0.21, height=21, width=54) self.Label1.configure(activebackground="#f9f9f9") self.Label1.configure(activeforeground="black") self.Label1.configure(background="#d0d0d0") self.Label1.configure(disabledforeground="#a3a3a3") self.Label1.configure(foreground="#000000") self.Label1.configure(highlightbackground="#d9d9d9") self.Label1.configure(highlightcolor="black") self.Label1.configure(text='''Comport''') self.Label2 = Label(self.Labelframe1) self.Label2.place(relx=0.04, rely=0.53, height=21, width=53) self.Label2.configure(activebackground="#f9f9f9") self.Label2.configure(activeforeground="black") self.Label2.configure(background="#d0d0d0") self.Label2.configure(disabledforeground="#a3a3a3") self.Label2.configure(foreground="#000000") self.Label2.configure(highlightbackground="#d9d9d9") self.Label2.configure(highlightcolor="black") self.Label2.configure(text='''Baudrate''') comportconfig_support.Readconfig() baudrateindex = self.find_index( comportconfig_support.localserialconfig['baudrate'], comportconfig_support.cbaudrates) # check if baudrate in list if baudrateindex < 0: baudrateindex = 0 comportindex = self.find_index( comportconfig_support.localserialconfig['comport'], listports.serial_ports()) # check if baudrate in list # comportindex = self.find_index(comportconfig_support.localserialconfig['comport'], # serial.tools.list_ports.comports() ) # check if baudrate in list if comportindex < 0: comportindex = 0 print('Config: ', comportconfig_support.localserialconfig) self.tc_baudrate = StringVar() self.tc_baudrate = ttk.Combobox(self.Labelframe1, textvariable=self.tc_baudrate) self.tc_baudrate.place(relx=0.35, rely=0.21, relheight=0.35, relwidth=0.56) self.tc_baudrate['values'] = comportconfig_support.cbaudrates self.tc_baudrate.current(baudrateindex) self.tc_baudrate.configure(takefocus="") self.tc_baudrate.bind('<<ComboboxSelected>>', self.set_baudrate) self.tc_comports = StringVar() self.tc_comport = ttk.Combobox(self.Labelframe1, textvariable=self.tc_comports) self.tc_comport.place(relx=0.35, rely=0.53, relheight=0.35, relwidth=0.56) self.tc_comport['values'] = listports.serial_ports() self.tc_comport.current(comportindex) self.tc_comport.bind('<<ComboboxSelected>>', self.set_comport) self.tc_comport.configure(takefocus="") print('baudrate: ', self.tc_baudrate['values']) print('ports: ', listports.serial_ports()) def set_baudrate(self, event): comportconfig_support.localserialconfig[ "baudrate"] = self.tc_baudrate.get() print('Set baudrate ', comportconfig_support. localserialconfig["baudrate"]) #, ComportConfig.tc_newbaudrate) print(comportconfig_support.localserialconfig) def set_comport(self, event): comportconfig_support.localserialconfig[ "comport"] = self.tc_comports.get() print('Set comport', comportconfig_support.localserialconfig["comport"]) print(comportconfig_support.localserialconfig) def find_index( self, value, qlist ): # find index of value in qlist and return index if found or -1 if not found try: idx = qlist.index(value) except ValueError: idx = -1 print('find_index: ', idx, ' Value: ', value, ' list: ', qlist) return idx