def left_side(self, master): self.nombre = Entry(master, justify=CENTER, bd=3, font=('Ravie', 11), textvariable=self.NameVar) self.nombre.pack(side=TOP, fill=X) self.nombre.bind("<Key>", self.Enter) self.texto = Entry(master, justify=CENTER, bd=3, font=('Ravie', 11), textvariable=self.TextVar) self.texto.pack(side=TOP, fill=X) self.texto.bind("<Key>", self.Enter) self.tag = Entry(master, justify=CENTER, bd=3, font=('Ravie', 11), textvariable=self.TagsVar) self.tag.pack(side=TOP, fill=X) self.tag.bind("<Key>", self.Enter) self.tree = Treeview(master) self.tree.pack(side=LEFT, expand=YES, fill=BOTH) self.tree.bind("<Double-1>", self.OnDoubleClick)
def initUI(self): self.entries_found = [] self.parent.title("Search your command cards") self.style = Style() self.style.theme_use("default") self.pack() self.input_title = Label(self, text="Enter your command below") self.input_title.grid(row=0, columnspan=2) self.input_box = Entry(self, width=90) self.input_box.grid(row=1, column=0) self.input_box.focus() self.input_box.bind("<Key>", self.onUpdateSearch) self.search_btn = Button(self, text="Search", command=self.onSearch) self.search_btn.grid(row=1, column=1) self.output_box = Treeview(self, columns=("Example")) ysb = Scrollbar(self, orient='vertical', command=self.output_box.yview) xsb = Scrollbar(self, orient='horizontal', command=self.output_box.xview) self.output_box.configure(yscroll=ysb.set, xscroll=xsb.set) self.output_box.heading('Example', text='Example', anchor='w') self.output_box.column("#0", minwidth=0, width=0, stretch=NO) self.output_box.column("Example", minwidth=0, width=785) self.output_box.bind("<Button-1>", self.OnEntryClick) self.output_box.grid(row=3, columnspan=2) self.selected_box = Text(self, width=110, height=19) self.selected_box.grid(row=4, columnspan=2) self.gotoadd_btn = Button(self, text="Go to Add", command=self.onGoToAdd) self.gotoadd_btn.grid(row=5)
def __init__(self, parent): Frame.__init__(self, parent) self.tree = Treeview(self) self.tree["columns"] = ("item1", "item2") self.tree.heading("item1", text="Column 1") self.tree.heading("item2", text="Column 2") self.tree.insert("", 0, text="Item 1", values=("Value 1", "Value 2")) row2 = self.tree.insert("", 1, "row2", text="Item 2") self.tree.insert(row2, "end", "item1", text="Item 1", values=("3", "7")) self.tree.insert(row2, "end", "item2", text="Item 2", values=("2", "5")) self.tree.pack(expand=1, fill="both") self.delete = Button(self, text="Delete Row", command=self.on_delete) self.delete.pack(side="bottom")
def create_file_treeview(self): self.fileTreeView = Treeview(self.main_window) self.fileTreeYScrollbar = Scrollbar(self.main_window, orient='vertical', command=self.fileTreeView.yview) self.fileTreeXScrollbar = Scrollbar(self.main_window, orient='horizontal', command=self.fileTreeView.xview) self.fileTreeView.configure(yscroll=self.fileTreeYScrollbar.set, xscroll=self.fileTreeXScrollbar.set) self.fileTreeView.grid(row=self.fileTreeRow, column=self.fileTreeCol, sticky=NS, rowspan=3) self.fileTreeYScrollbar.grid(row=self.fileTreeRow, column=self.fileTreeScrollbarCol, sticky=NS, rowspan=3) self.fileTreeXScrollbar.grid(row=self.horizontalScrollbarRow, column=self.fileTreeCol, sticky=EW) self.fileTreeView.tag_configure('red', background=self.redColor) self.fileTreeView.tag_configure('green', background=self.greenColor) self.fileTreeView.tag_configure('yellow', background=self.yellowColor) self.fileTreeView.tag_configure('purpleLight', background=self.purpleLight) # hide it until needed self.fileTreeView.grid_remove() self.fileTreeYScrollbar.grid_remove() self.fileTreeXScrollbar.grid_remove()
def start_browse_teams(): global root root = Tk() root.title("Browse Teams") root.minsize(width=500, height=500) browse_teams_tree = Treeview(root) browse_teams_tree["columns"] = ("1", "2", "3", "4", "5") browse_teams_tree.column("1", width=100) browse_teams_tree.column("2", width=100) browse_teams_tree.column("3", width=100) browse_teams_tree.column("4", width=100) browse_teams_tree.column("5", width=100) browse_teams_tree.heading("1", text="Team ID") browse_teams_tree.heading("2", text="Camp ID") browse_teams_tree.heading("3", text="Team Name") browse_teams_tree.heading("4", text="Max Number of Members") browse_teams_tree.heading("5", text="Number of Members") index = 0 for team_id in Team.get_all_ids(): current_team = Team.select_team(team_id[0]) browse_teams_tree.insert('', index, text= "row" + str(index + 1), values = (team_id[0], current_team[0], current_team[1], current_team[2], current_team[3])) index += 1 browse_teams_tree.pack() exit_browse_teams_bt = Button(root, text="Exit", width=30, command = exit_browse_teams_bt_handler) exit_browse_teams_bt.pack(expand=True) root.mainloop()
def __draw_scores(self): self.score_list = Treeview(self, columns=('name', 'score')) self.score_list['show'] = 'headings' self.score_list.heading('name', text='Name') self.score_list.column('name', width=80, anchor=CENTER) self.score_list.heading('score', text='Score') self.score_list.column('score', width=80, anchor=CENTER) self.score_list.grid(row=1, column=1, padx=(0, 20))
def start_browse_campers(): global root root = Tk() root.title("Browse Campers") root.minsize(width=500, height=500) browse_camps_tree = Treeview(root) browse_camps_tree["columns"] = ("Camper ID", "First Name", "Last Name", "Date of Birth", "Gender", "Address", "Camps IDs", "Bunkhouses IDs", "Teams IDs") browse_camps_tree.column("Camper ID", width=100) browse_camps_tree.column("First Name", width=100) browse_camps_tree.column("Last Name", width=100) browse_camps_tree.column("Date of Birth", width=100) browse_camps_tree.column("Gender", width=100) browse_camps_tree.column("Address", width=100) browse_camps_tree.column("Camps IDs", width=100) browse_camps_tree.column("Bunkhouses IDs", width=100) browse_camps_tree.column("Teams IDs", width=100) browse_camps_tree.heading("Camper ID", text="Camper ID") browse_camps_tree.heading("First Name", text="First Name") browse_camps_tree.heading("Last Name", text="Last Name") browse_camps_tree.heading("Date of Birth", text="Date of Birth") browse_camps_tree.heading("Gender", text="Gender") browse_camps_tree.heading("Address", text="Address") browse_camps_tree.heading("Camps IDs", text="Camps IDs") browse_camps_tree.heading("Bunkhouses IDs", text="Bunkhouses IDs") browse_camps_tree.heading("Teams IDs", text="Teams IDs") index = 0 for camper_id in Camper.get_all_ids(): current_camper = Camper(camper_id[0]) data = current_camper.select_camper() data2 = Bunkhouse.select_camp_team_bunkhouse(camper_id[0]) browse_camps_tree.insert('', index, text="row" + str(index + 1), values=(camper_id, data[0], data[1], data[2], data[3], data[4], data2[0][:-2], data2[2][:-2], data2[1][:-2])) index += 1 browse_camps_tree.pack() exit_browse_camp_bt = Button(root, text="Exit", width=30, command=exit_browse_camp_bt_handler) exit_browse_camp_bt.pack(expand=True) root.mainloop()
def __init__(self, master, headers, data, name=None): Frame.__init__(self, master, name=name) #: column headers self.headers = headers #: table data self.data = data #: :class:`~ttk.Treeview` that only shows "headings" not "tree columns" self.tree = Treeview(self, columns=self.headers, show="headings", name='tabletree') #: vertical scrollbar self.yscroll = Scrollbar(self, orient="vertical", command=self.tree.yview, name='table_yscroll') #: horizontal scrollbar self.xscroll = Scrollbar(self, orient="horizontal", command=self.tree.xview, name='table_xscroll') self.tree['yscrollcommand'] = self.yscroll.set # bind to scrollbars self.tree['xscrollcommand'] = self.xscroll.set # position widgets and set resize behavior self.tree.grid(column=0, row=0, sticky=(N + E + W + S)) self.yscroll.grid(column=1, row=0, sticky=(N + S)) self.xscroll.grid(column=0, row=1, sticky=(E + W)) self.grid_columnconfigure(0, weight=1) self.grid_rowconfigure(0, weight=1) # build tree for col in self.headers: # NOTE: Use col as column identifiers, crafty! # NOTE: Also change col to title case using str.title() # NOTE: make lambda behave nicely in a loop using default arg! callback = lambda c=col: self.sortby(c, False) self.tree.heading(col, text=col.title(), command=callback) # adjust the column's width to the header string self.tree.column(col, width=tkFont.Font().measure(col.title())) # insert a new top-level treeview item by suing an empty string for item in self.data: self.tree.insert('', END, values=item) # adjust column's width if necessary to fit each value for idx, val in enumerate(item): col_width = tkFont.Font().measure(val) # option can be specified at least 3 ways: as (a) width=None, # (b) option='width' or (c) 'width', where 'width' can be any # valid column option. if self.tree.column(self.headers[idx], 'width') < col_width: self.tree.column(self.headers[idx], width=col_width)
def mostra_historic(self): popup = Toplevel() agenda_historic = Treeview( popup, columns=["nom", "tel", "email", "path", "accio", "data"], show="headings") agenda_historic.heading("nom", text="Nom") agenda_historic.heading("tel", text="Telefon") agenda_historic.heading("email", text="Email") agenda_historic.heading("path", text="Path") agenda_historic.heading("accio", text="Acció") agenda_historic.heading("data", text="Data") agenda_historic.column("nom", minwidth=0, width=150, stretch=True, anchor="c") agenda_historic.column("tel", minwidth=0, width=100, stretch=True, anchor="c") agenda_historic.column("email", minwidth=0, width=150, stretch=True, anchor="c") agenda_historic.column("path", minwidth=0, width=200, stretch=True, anchor="c") agenda_historic.column("accio", minwidth=0, width=100, stretch=True, anchor="c") agenda_historic.column("data", minwidth=0, width=150, stretch=True, anchor="c") agenda_historic.grid(row=0, column=0, padx=5, pady=5) self.cursor.execute("select * from HISTORIC ORDER BY data DESC;") dades = self.cursor.fetchall() for data_usuari in dades: agenda_historic.insert('', 'end', values=data_usuari)
def __init__(self, root, frame, num, logit, all_values, list_styles_names): Treeview.__init__(self, root) self.root = root self.num = num self.frame = frame self.name = "MOXA-%s" % str(self.num) self.tree = Treeview(frame, style=list_styles_names[num]) self.tree["columns"] = ("one", "two", "three") self.tree.heading("#0", text="") self.tree.column("#0", minwidth=0, width=5, stretch=NO) self.tree.heading("one", text="Port") self.tree.column("one", minwidth=0, width=30, stretch=NO) self.tree.column("two", minwidth=0, width=name_column, stretch=NO) self.tree.heading("three", text="State") self.tree.column("three", minwidth=0, width=state_column, stretch=YES) self.tree['height'] = 32 self.tree.tag_configure('green', background='gray7', foreground='green2') self.tree.tag_configure('red', background='gray7', foreground='tomato2') self.tree.tag_configure('blue', background='gray7', foreground='RoyalBlue') self.tree.tag_configure('yellow', background='gray7', foreground='yellow') self.tree.tag_configure('ready', background='gray7', foreground='white') self.tree.tag_configure( 'focus', background='yellow', ) self.tree.bind("<Motion>", self.mycallback) self.last_focus = None self.tree.pack(side=LEFT) self.logit = logit self.moxa = all_values[self.num][0] self.wraplength = 180 for key in self.moxa.keys(): self.tree.insert("", "end", values=(str(key), self.moxa[key], "<><><>"), tags=("green", ))
def initUI(self): self.columnconfigure(0, weight=0) self.columnconfigure(1, weight=0) self.columnconfigure(2, weight=1) self.columnconfigure(3, weight=1) self.rowconfigure(0, weight=1) self.commandFrame = Frame(self, background="white") self.commandFrame.grid(row=0, column=0, columnspan=5, sticky=W+E) self.commandFrame.columnconfigure(1, weight=1) self.btnCommand = Button(self.commandFrame, text="Run") self.btnCommand.grid(row=0, column=0) self.strCommand = StringVar() self.entCommand = Entry(self.commandFrame, textvariable=self.strCommand) self.entCommand.grid(row=0, column=1, sticky=W+E) self.lstMacro = Listbox(self) self.lstMacro.grid(row=1, column=0, sticky=N+S+W+E) self.treeview = Treeview(self, columns=("Angle"), displaycolumns="#all", selectmode="browse") self.treeview.grid(row=1, column=1, columnspan=4, sticky=N+S+W+E) self.treeScrollbar = Scrollbar(self) self.treeScrollbar.grid(row=1, column=5, sticky=N+S) self.treeview.config(yscrollcommand=self.treeScrollbar.set) self.treeScrollbar.config(command=self.treeview.yview) self.btnFrame = Frame(self, background="white") self.btnFrame.grid(row=2, column=0, columnspan=5, sticky=W+E) self.btnRun = Button(self.btnFrame, text="Run", command=self.runMacro) self.btnRun.grid(row=0, column=0) self.btnStop = Button(self.btnFrame, text="Stop") self.btnStop.grid(row=0, column=1) self.btnSaveMacro = Button(self.btnFrame, text="Save Macro", command=self.saveMacro) self.btnSaveMacro.grid(row=0, column=2) self.btnDeleteMacro = Button(self.btnFrame, text="Delete Macro") self.btnDeleteMacro.grid(row=0, column=3) self.btnDeleteState = Button(self.btnFrame, text="Delete State") self.btnDeleteState.grid(row=0, column=4)
def CreateUI(self): tv = Treeview(self) tv['columns'] = ('no_of_coin', 's_id', 'm_s_id') tv.heading("#0", text='Date', anchor='c') tv.column("#0", anchor="c") tv.heading('no_of_coin', text='No Of Coin') tv.column('no_of_coin', anchor='center', width=100) tv.heading('s_id', text='Service ID') tv.column('s_id', anchor='center', width=100) tv.heading('m_s_id', text='Miner ID') tv.column('m_s_id', anchor='center', width=100) tv.grid(sticky=(N, S, W, E)) self.treeview = tv self.grid_rowconfigure(0, weight=1) self.grid_columnconfigure(0, weight=1) btn = Button(self, text=('Back'), command=self.back, width=10, background='red') btn.grid(sticky=(S + E))
def start_query_browse(): global root root = Tk() root.title("Browse Camps, Bunkhouse and Teams") root.minsize(width=500, height=500) browse_query_tree = Treeview(root) browse_query_tree["columns"] = ("1", "2", "3", "4", "5", "6", "7", "8", "9") browse_query_tree.column("1", width=100) browse_query_tree.column("2", width=100) browse_query_tree.column("3", width=100) browse_query_tree.column("4", width=100) browse_query_tree.column("5", width=100) browse_query_tree.column("6", width=100) browse_query_tree.column("7", width=100) browse_query_tree.column("8", width=100) browse_query_tree.column("9", width=100) browse_query_tree.heading("1", text="Bunkhouses IDs") browse_query_tree.heading("2", text="Camps IDs") browse_query_tree.heading("3", text="Camp Start Date") browse_query_tree.heading("4", text="Camp End Date") browse_query_tree.heading("5", text="Camper ID") browse_query_tree.heading("6", text="First Name") browse_query_tree.heading("7", text="Last Name") browse_query_tree.heading("8", text="Gender") browse_query_tree.heading("9", text="Teams IDs") index = 0 for row_data in Bunkhouse.get_all_query_data(): browse_query_tree.insert('', index, text="row" + str(index + 1), values=(row_data[0], row_data[1], row_data[2], row_data[3], row_data[4], row_data[5], row_data[6], row_data[7], row_data[8])) index += 1 browse_query_tree.pack() exit_bt = Button(root, text="Exit", width=30, command=exit_bt_handler) exit_bt.pack(expand=True) root.mainloop()
def modelConfigFrame(self, parent): """ Create and place next under parent a frame containing the current model configuration. """ #Create container frame = Frame(parent) #Create treeView for model configuration self.modelTree = Treeview(parent, columns=('size', 'modified')) self.populateModelTree() self.modelTree.grid(row=1) #Bind right-click (<Button-3>) on tree items for contextual menus def treeContextualMenu(event): itemId = self.modelTree.identify_row(event.y) if itemId: self.modelTree.selection_set(itemId) item = self.modelTree.selection() ctxMenu = Menu(self.window, tearoff=0) ctxMenu.add_separator() if item[0][:4] == "tag:": tag = item[0][4:] ctxMenu.add_command( label="Add samples (from a csv file)", command=lambda: self.addSampleFileToModelDir(tag)) ctxMenu.add_separator() ctxMenu.add_command( label="Visualize feature map w.r.t loaded model", command=lambda: self.testOnLoadedModel( join(configs["model_data_dir"], tag), True)) elif item[0][:5] == "file:": filename = item[0][5:] ctxMenu.add_command( label="Test on loaded model", command=lambda: self.testOnLoadedModel( join(configs["model_data_dir"], filename), False)) ctxMenu.add_separator() ctxMenu.add_command( label="Delete", command=lambda: self.deleteModelFile(filename)) ctxMenu.add_separator() ctxMenu.tk_popup(event.x_root, event.y_root) self.modelTree.bind("<Button-3>", treeContextualMenu) return frame
def createui(self): image = Image.open('header.png') photo = ImageTk.PhotoImage(image) lbl = Label(self, image=photo) lbl.image = photo lbl.grid(row=0, column=0, columnspan=2, sticky='ns') self.treeview = Treeview(self) self.treeview['columns'] = ['title'] self.treeview.heading("#0", text='Repeticiones', anchor='center') self.treeview.column("#0", anchor="center", width=90) self.treeview.heading('title', text='Titulo', anchor='w') self.treeview.column('title', anchor='w', width=700) self.treeview.grid(sticky=(N, S, W, E)) self.treeview.bind("<Double-1>", self.openlink) ysb = Scrollbar(self, width=18, orient='vertical', command=self.treeview.yview) ysb.grid(row=1, column=1, sticky='ns') self.treeview.configure(yscroll=ysb.set) self.grid_rowconfigure(1, weight=1) self.grid_columnconfigure(0, weight=1)
def start_browse_camps(): global root root = Tk() root.title("Browse Camps") root.minsize(width=500, height=500) browse_camps_tree = Treeview(root) browse_camps_tree["columns"] = ("Camp ID", "Start Date", "End Date", "Number of Bunckhouses", "Number of Teams", "Cost") browse_camps_tree.column("Camp ID", width=100) browse_camps_tree.column("Start Date", width=100) browse_camps_tree.column("End Date", width=100) browse_camps_tree.column("Number of Bunckhouses", width=100) browse_camps_tree.column("Number of Teams", width=100) browse_camps_tree.column("Cost", width=100) browse_camps_tree.heading("Camp ID", text="Camp ID") browse_camps_tree.heading("Start Date", text="Start Date") browse_camps_tree.heading("End Date", text="End Date") browse_camps_tree.heading("Number of Bunckhouses", text="Number of Bunckhouses") browse_camps_tree.heading("Number of Teams", text="Number of Teams") browse_camps_tree.heading("Cost", text="Cost") index = 0 for camp_id in Camp.get_all_ids(): current_camp = Camp(camp_id[0]) data = current_camp.select_camp() browse_camps_tree.insert('', index, text="row" + str(index + 1), values=(camp_id, data[0], data[1], data[2], data[3], data[4])) index += 1 browse_camps_tree.pack() exit_browse_camp_bt = Button(root, text="Exit", width=30, command=exit_browse_camp_bt_handler) exit_browse_camp_bt.pack(expand=True) root.mainloop()
def start_browse_payments(): global root root = Tk() root.title("Browse Payments") root.minsize(width=500, height=500) browse_payments_tree = Treeview(root) browse_payments_tree["columns"] = ("1", "2", "3", "4", "5", "6") browse_payments_tree.column("1", width=100) browse_payments_tree.column("2", width=100) browse_payments_tree.column("3", width=100) browse_payments_tree.column("4", width=100) browse_payments_tree.column("5", width=100) browse_payments_tree.column("6", width=100) browse_payments_tree.heading("1", text="Payment ID") browse_payments_tree.heading("2", text="Camper ID") browse_payments_tree.heading("3", text="Camp ID") browse_payments_tree.heading("4", text="Date of Payment") browse_payments_tree.heading("5", text="Amount Paid") browse_payments_tree.heading("6", text="Camp Start Date") index = 0 for payment_id in Payment.get_all_ids(): current_payment = Payment(payment_id[0]) data = current_payment.select_payment() mycamp = Camp(data[1]) camp_start = mycamp.select_camp()[0] browse_payments_tree.insert('', index, text="row" + str(index + 1), values=(payment_id, data[0], data[1], data[2], data[3], camp_start)) index += 1 browse_payments_tree.pack() exit_payments_camp_bt = Button(root, text="Exit", width=30, command=exit_browse_payment_bt_handler) exit_payments_camp_bt.pack(expand=True) root.mainloop()
def make_tree( mainframe, directory ): logging.debug( "Creating a new tree" ) tree = Treeview( mainframe, columns=( 'ins', 'outs' ) ) logging.debug( "Packing the tree into the GUI. Adding columns and headings" ) tree.grid( column=2, row=4 ) tree.heading( "#0", text="Block" ) tree.heading( 'ins', text='Inputs' ) tree.heading( 'outs', text="Outputs" ) # Set the width and alignment of the two columns tree.column( 'ins', width=60, anchor='center' ) tree.column( 'outs', width=60, anchor='center' ) logging.debug( "Filling the tree with directory: %s" % directory ) codefiles = fill_tree( tree, directory ) logging.debug( "Done filling tree" ) return tree, codefiles
def __init__(self, datasource=None): self.__main_window = Tk() self.__main_window.minsize(800, 600) self.__main_window.iconbitmap("resources/quill.ico") self.__main_window.wm_title("Notebook Demo") self.__add_menu() cols = ("Last Name", "First Name", "Phone", "Birthday") tv = Treeview(self.__main_window, columns=cols, show="headings") self.__table = tv for col in cols: tv.heading(col, text=col) tv.grid(row=0, sticky=Tkinter.N + Tkinter.S + Tkinter.E + Tkinter.W) Tkinter.Grid.columnconfigure(self.__main_window, 0, weight=1) Tkinter.Grid.rowconfigure(self.__main_window, 0, weight=1) Tkinter.Grid.columnconfigure(self.__main_window, 1, minsize=100) self.__add_buttons() # To be able to use this UI from another app and as autonomous app # Also, I just hate an idea of creating storage in UI if datasource is None: self.__datasource = DataStorage() else: self.__datasource = datasource
def __initUI(self): """ Initialize UI with a list and required entry fields and submit buttons.""" self.parent.title('Multiplayer Game') self.pack(fill=BOTH, expand=1) self.lobby_list = Treeview(self, columns=('room', 'players')) self.lobby_list['show'] = 'headings' self.lobby_list.heading('room', text='Room ID') self.lobby_list.column('room', width=250, anchor=CENTER) self.lobby_list.heading('players', text='Players') self.lobby_list.column('players', width=100, anchor=CENTER) self.lobby_list.grid(row=1, column=0, columnspan=2, rowspan=2, padx=20, pady=(10, 0)) self.connect_lobby = Button(self, text='Joining Sudoku\n Solving Session', command=self.__connect_lobby) self.connect_lobby.grid(row=3, column=1, pady=(0, 10)) Label(self, text='Creating new Sudoku\n solving session:').grid(row=4, column=0) self.max_players = Entry(self) self.max_players.grid(row=4, column=1) self.create_game = Button(self, text='Join new game', command=self.__create_game) self.create_game.grid(row=5, column=1)
def __init__(self, master, columns, data=None, command=None, sort=True, select_mode=None, heading_anchor=CENTER, cell_anchor=W, style=None, height=None, padding=None, adjust_heading_to_content=False, stripped_rows=None, selection_background=None, selection_foreground=None, field_background=None, heading_font=None, heading_background=None, heading_foreground=None, cell_pady=2, cell_background=None, cell_foreground=None, cell_font=None, headers=True): self._stripped_rows = stripped_rows self._columns = columns self._number_of_rows = 0 self._number_of_columns = len(columns) self.row = self.List_Of_Rows(self) self.column = self.List_Of_Columns(self) s = Style() if style is None: style_name = "Multicolumn_Listbox%s.Treeview" % self._style_index self._style_index += 1 else: style_name = style style_map = {} if selection_background is not None: style_map["background"] = [('selected', selection_background)] if selection_foreground is not None: style_map["foeground"] = [('selected', selection_foreground)] if style_map: s.map(style_name, **style_map) style_config = {} if cell_background is not None: style_config["background"] = cell_background if cell_foreground is not None: style_config["foreground"] = cell_foreground if cell_font is None: font_name = s.lookup(style_name, "font") cell_font = nametofont(font_name) else: if not isinstance(cell_font, Font): if isinstance(cell_font, basestring): cell_font = nametofont(cell_font) else: if len(font) == 1: cell_font = Font(family=cell_font[0]) elif len(font) == 2: cell_font = Font(family=cell_font[0], size=cell_font[1]) elif len(font) == 3: cell_font = Font(family=cell_font[0], size=cell_font[1], weight=cell_font[2]) else: raise ValueError( "Not possible more than 3 values for font") style_config["font"] = cell_font self._cell_font = cell_font self._rowheight = cell_font.metrics("linespace") + cell_pady style_config["rowheight"] = self._rowheight if field_background is not None: style_config["fieldbackground"] = field_background s.configure(style_name, **style_config) heading_style_config = {} if heading_font is not None: heading_style_config["font"] = heading_font if heading_background is not None: heading_style_config["background"] = heading_background if heading_foreground is not None: heading_style_config["foreground"] = heading_foreground heading_style_name = style_name + ".Heading" s.configure(heading_style_name, **heading_style_config) treeview_kwargs = {"style": style_name} if height is not None: treeview_kwargs["height"] = height if padding is not None: treeview_kwargs["padding"] = padding if headers: treeview_kwargs["show"] = "headings" else: treeview_kwargs["show"] = "" if select_mode is not None: treeview_kwargs["selectmode"] = select_mode self.interior = Treeview(master, columns=columns, **treeview_kwargs) if command is not None: self._command = command self.interior.bind("<<TreeviewSelect>>", self._on_select) for i in range(0, self._number_of_columns): if sort: self.interior.heading( i, text=columns[i], anchor=heading_anchor, command=lambda col=i: self.sort_by(col, descending=False)) else: self.interior.heading(i, text=columns[i], anchor=heading_anchor) if adjust_heading_to_content: self.interior.column(i, width=Font().measure(columns[i])) self.interior.column(i, anchor=cell_anchor) if data is not None: for row in data: self.insert_row(row)
def Continue(self): self.master.withdraw() self.main = Toplevel(self.master) self.main.geometry("%dx%d+%d+%d" % (1038-206, 694, int((500.0/2560.0)*screen_resolution[0]), int((60.0/1440.0)*screen_resolution[1]))) self.main.minsize(376,227) self.interior = PanedWindow(self.main,sashwidth=5) self.interior.pack(fill=BOTH, expand=1) self.elements_frame = Frame(self.interior, height=1038, width=212,relief=RIDGE,borderwidth=0) self.interior.add(self.elements_frame) self.interior.paneconfig(self.elements_frame,minsize=130) self.graph_frame = Frame(self.interior) self.interior.add(self.graph_frame) self.interior.paneconfig(self.graph_frame,minsize=130) self.main.bind("<ButtonRelease-1>",self.pan_update) self.main.bind("<ButtonRelease-3>",self.pan_update) self.main.bind("<Button-3>",self.right_menu) self.edit_frame = Frame(self.graph_frame) self.edit_frame.pack(side=TOP,fill=X,padx=10) self.canvas = FigureCanvasTkAgg(self.Fig, master=self.graph_frame) self.canvas.show() self.canvas.get_tk_widget().pack(fill=BOTH,expand=1) self.nav_frame = Frame(self.edit_frame) self.nav_frame.pack(side=LEFT,anchor=W) self.toolbar = NavigationToolbar(self.canvas, self.nav_frame) self.main.protocol('WM_DELETE_WINDOW',self.master.destroy) self.elements = Treeview(self.elements_frame,columns=("values","xlocations","ylocations"),selectmode=BROWSE) self.elements.heading("#0",text="Components") self.elements.heading("values",text="Str") self.elements.heading("xlocations",text="X") self.elements.heading("ylocations",text="Y") self.elements.column("#0",width=90,anchor=CENTER) self.elements.column("values",width=45,anchor=CENTER) self.elements.column("xlocations",width=26,anchor=CENTER) self.elements.column("ylocations",width=26,anchor=CENTER) self.elements.pack(fill=BOTH,expand=1) self.as_button_frame = Frame(self.elements_frame) self.add_button = Button(self.as_button_frame,text = '+',width=2,command=self.add) self.sub_button = Button(self.as_button_frame,text = '-',width=2,command=self.subtract) self.options_button = Button(self.as_button_frame,text='Options',command=self.options) self.as_button_frame.pack(side=BOTTOM,anchor=W) self.options_button.pack(side=RIGHT) self.sub_button.pack(side=RIGHT,anchor=W) self.add_button.pack(side=LEFT,anchor=W) self.addsub_menu = Menu(self.as_button_frame,tearoff=0) self.addsub_menu.add_command(command=self.add_source,label='Source') self.addsub_menu.add_command(command=self.add_vortex,label='Vortex') self.addsub_menu.add_command(command=self.add_uniform,label='Uniform') self.addsub_menu.add_command(command=self.add_doublet,label='Doublet') self.addsub_menu.add_command(command=self.add_corner,label='Corner') #if self.listbox.get(self.listbox.curselection()) == 'Default': if self.radio_var.get() == 'Default': self.active_components = [] self.active_calls = {} pass #elif self.listbox.get(self.listbox.curselection()) == 'Maelstrom': elif self.radio_var.get() == 'Maelstrom': self.elements.insert("",0,"M",text="Maelstrom",open=TRUE) self.active_components = ['M'] self.elements.insert("M",0,iid='s%s'%self.active_numbers['s'],text="Source",values=("%s"%1,0,0)) self.elements.insert("M",0,iid='v%s'%self.active_numbers['v'],text="Vortex",values=("%s"%1,0,0)) self.active_calls = {'s%s'%self.active_numbers['s']:("s",self.elements.item('s%s'%self.active_numbers['s'],"values")), 'v%s'%self.active_numbers['v']:("v",self.elements.item('v%s'%self.active_numbers['v'],"values"))} self.active_numbers['s'] += 1 self.active_numbers['v'] += 1 elif self.radio_var.get() == 'Rankine Half-Body': self.elements.insert("",0,"RHF",text="Rankine Half-Body",open=TRUE) self.active_components = ['RHF'] self.elements.insert("RHF",0,iid='s%s'%self.active_numbers['s'],text="Source",values=("%s"%10,0,0)) self.elements.insert("RHF",0,iid='u%s'%self.active_numbers['u'],text="Uniform",values=("%s"%1,1,0)) self.active_calls = {'s%s'%self.active_numbers['s']:("s",self.elements.item('s%s'%self.active_numbers['s'],"values")), 'u%s'%self.active_numbers['u']:("u",self.elements.item('u%s'%self.active_numbers['u'],"values"))} self.active_numbers['s'] += 1 self.active_numbers['u'] += 1 elif self.radio_var.get() == 'Rankine Oval': self.elements.insert("",0,"RO",text="Rankine Oval",open=TRUE) self.active_components = ['RO'] self.elements.insert("RO",0,iid='s%s'%self.active_numbers['s'],text="Source",values=("%s"%10,-2,0)) self.elements.insert("RO",0,iid='s%s'%(self.active_numbers['s']+1),text="Source",values=("%s"%-10,2,0)) self.elements.insert("RO",0,iid='u%s'%self.active_numbers['u'],text="Uniform",values=("%s"%1,1,0)) self.active_calls = {'s%s'%self.active_numbers['s']:("s",self.elements.item('s%s'%self.active_numbers['s'],"values")), 's%s'%(self.active_numbers['s']+1):("s",self.elements.item('s%s'%(self.active_numbers['s']+1),"values")), 'u%s'%self.active_numbers['u']:("u",self.elements.item('u%s'%self.active_numbers['u'],"values"))} self.active_numbers['s'] += 2 self.active_numbers['u'] += 1 elif self.radio_var.get() == 'Cylinder': self.elements.insert("",0,'D+U',text="Cylinder",open=TRUE) self.active_components = ['D+U'] self.elements.insert('D+U',0,iid='d%s'%self.active_numbers['d'],text="Doublet",values=("%s"%25,0,0)) self.elements.insert('D+U',0,iid='u%s'%self.active_numbers['u'],text="Uniform",values=("%s"%1,1,0)) self.active_calls = {'d%s'%self.active_numbers['d']:("d",self.elements.item('d%s'%self.active_numbers['d'],"values")), 'u%s'%self.active_numbers['u']:("u",self.elements.item('u%s'%self.active_numbers['u'],"values"))} self.active_numbers['d'] += 1 self.active_numbers['u'] += 1 elif self.radio_var.get() == 'Stagnation & Vortex': self.elements.insert("",0,'S+V',text="Stag+Vort",open=TRUE) self.active_components = ['S+V'] self.elements.insert('S+V',0,iid='n%s'%self.active_numbers['n'],text="C (n,A)",values=("%s,%s"%(2,1),0,0)) self.elements.insert('S+V',0,iid='v%s'%self.active_numbers['v'],text="Vortex",values=("%s"%25,0,0)) self.active_calls = {'n%s'%self.active_numbers['n']:("n",self.elements.item('n%s'%self.active_numbers['n'],"values")), 'v%s'%self.active_numbers['v']:("v",self.elements.item('v%s'%self.active_numbers['v'],"values"))} self.active_numbers['n'] += 1 self.active_numbers['v'] += 1 self.elements.bind("<Double-Button-1>",self.edit) self.elements.bind('<<TreeviewSelect>>',self.treeview_select) self.main.bind("<Return>",self.edit_return) self.main.bind("<Escape>",self.edit_return) self.rightc_menu = Menu(self.graph_frame,tearoff=0) self.add_menu = Menu(self.rightc_menu,tearoff=0) self.rightc_menu.add_cascade(label="Add",menu=self.add_menu) self.add_menu.add_command(command=self.addm_source,label='Source') self.add_menu.add_command(command=self.addm_vortex,label='Vortex') self.add_menu.add_command(command=self.addm_uniform,label='Uniform') self.add_menu.add_command(command=self.addm_doublet,label='Doublet') self.add_menu.add_command(command=self.addm_corner,label='Corner')
def __init__(self, root, cursor, db): self.frame = Frame(root) self.frame.configure(background='white') self.list_toplevel = {} self.cursor = cursor self.db = db self.child_toplevel = None self.frame.pack() image = Image.open("photo.jpg") image = image.resize((250, 250), Image.ANTIALIAS) photo = ImageTk.PhotoImage(image) label = Label(self.frame, image=photo) label.grid(row=0, column=0, sticky=W) label.image = photo # keep a reference! nou_registre = LabelFrame(self.frame, text="Nou registre", fg="Blue", padx=5, pady=5) nou_registre.configure(background='white') nou_registre.grid(row=0, column=1, padx=15, sticky=W) text_nom = Label(nou_registre, text="Nom:", fg="Blue") text_nom.configure(background='white') text_nom.grid(row=0, column=0) self.entry_nom = Entry(nou_registre) self.entry_nom.grid(row=0, column=1, sticky=W) text_telefon = Label(nou_registre, text="Telèfon: ", fg="Blue") text_telefon.configure(background='white') text_telefon.grid(row=1, column=0) self.entry_telefon = Entry(nou_registre) self.entry_telefon.grid(row=1, column=1) text_email = Label(nou_registre, text="Email: ", fg="Blue") text_email.configure(background='white') text_email.grid(row=2, column=0) self.entry_email = Entry(nou_registre) self.entry_email.grid(row=2, column=1) button_afegir_contacte = Button(nou_registre, text="Afegir contacte", fg="Blue", command=self.afegeix_contacte) button_afegir_contacte.grid(row=3, column=1, sticky=E) button_mostra_historic = Button(nou_registre, text="Mostra historic", fg="Blue", command=self.mostra_historic) button_mostra_historic.grid(row=4, column=0, sticky=W) mostrar_contactes = Button(self.frame, text="Mostrar contactes", fg="Blue", command=self.insert_contacts_treeview) mostrar_contactes.grid(sticky=W, row=3) self.missatge_error_confirmacio = StringVar() self.label_error_confirmacio = Label( self.frame, textvariable=self.missatge_error_confirmacio, fg="Red") self.label_error_confirmacio.configure(background='white') self.label_error_confirmacio.grid(sticky=W, row=3, column=1) self.agenda_contactes = Treeview(self.frame, columns=["nom", "tel"], show="headings") self.agenda_contactes.heading("nom", text="Nom") self.agenda_contactes.heading("tel", text="Telefon") self.agenda_contactes.column("nom", minwidth=0, width=200, stretch=NO, anchor="c") self.agenda_contactes.column("tel", minwidth=0, width=200, stretch=NO, anchor="c") self.agenda_contactes.grid(row=4, column=0, padx=0, columnspan=2) self.insert_contacts_treeview() elimina_seleccionat = Button(self.frame, text="Eliminar seleccionat", command=self.elimina_contacte, fg="Blue") elimina_seleccionat.grid(row=5, column=0, sticky=W) self.modificar_seleccionat = Button(self.frame, text="Modificar seleccionat", fg="Blue", command=self.modifica_contacte) self.modificar_seleccionat.grid(row=5, column=1, sticky=W) sortir = Button(self.frame, text="Sortir", fg="Blue", command=self.frame.quit) sortir.grid(row=5, column=2, sticky=E)
def __init__(self, parent, controller): Frame.__init__(self, parent) lupa = PhotoImage(file='img/lupa.png') #VARIABLES tcontrato = ['Vivienda', 'Comercial'] aplica = StringVar() #WIDGETS #========================= HEADER =========================== self.header = Label(self, text="RECIBO DE CAJA", font="bold") self.header.pack(pady=20, side=TOP) #========================== WRAPPER ========================== self.wrapper = Frame (self) self.wrapper.pack(side=TOP, fill=Y) #self.wrapper.pack(side=LEFT, fill=Y)#Este ubica el forma a la IZA #================ NOTEBOOK =============> self.nb = Notebook(self.wrapper) #-----------------------> TAB 1 self.tab1 = Frame (self.nb) self.tab1.pack() self.f0 = Frame(self.tab1)#------------------------------------- self.f0.pack(pady=5,fill=X) self.R1 = Radiobutton(self.f0, text="Arrendatario", variable=aplica, value='Arrendatario') self.R1.pack(padx=20,side=LEFT) self.R2 = Radiobutton (self.f0, text="Propietario", variable=aplica, value='Propietario') self.R2.pack(padx=20,side=LEFT) self.R3 = Radiobutton (self.f0, text="Tercero", variable=aplica, value='Tercero') self.R3.pack(padx=20,side=LEFT) self.f1 = Frame(self.tab1)#------------------------------------- self.f1.pack(pady=5,fill=X) self.cc = Label(self.f1, text='CC/Nit: ') self.cc.pack(side=LEFT) self.ccE = Entry(self.f1) self.ccE.pack(side=LEFT) self.b1 = Button(self.f1, text='Buscar', image=lupa) self.b1.image=lupa self.b1.pack(side=LEFT) self.f2 = Frame(self.tab1) self.f2.pack(pady=5,fill=X)#------------------------------------ self.nombre = Label(self.f2, text='Nombre:') self.nombre.pack(side=LEFT) self.nombrE = Entry(self.f2, width=5, state=DISABLED) self.nombrE.pack(side=LEFT, fill=X, expand=1) self.f3 = Frame(self.tab1) self.f3.pack(pady=5,fill=X)#------------------------------------ self.inmueble = Label(self.f3, text='Inmueble:') self.inmueble.pack(side=LEFT) self.inmuebleCbx = Combobox(self.f3, values=NONE, width=10) self.inmuebleCbx.set('') self.inmuebleCbx.pack(side=LEFT, fill=X, expand=1) self.b2 = Button(self.f3, text='Agregar', image=lupa) self.b2.image=lupa self.b2.pack(side=LEFT) self.f4 = Frame(self.tab1) self.f4.pack(pady=5,fill=X)#------------------------------------ self.fpago = Label(self.f4, text='Forma de Pago:') self.fpago.pack(side=LEFT) self.fpagoCbx = Combobox(self.f4, values=NONE, width=10) self.fpagoCbx.set('') self.fpagoCbx.pack(side=LEFT) self.b3 = Button(self.f4, text='Crear novedad', state=DISABLED) self.b3.pack(side=LEFT) #========================== TREEVIEW =========================== self.f5 = Frame(self.tab1) self.f5.pack(pady=5,fill=X)#------------------------------------ self.tree = Treeview(self.f5, height=4, show="headings", columns=('col1','col2','col3')) self.tree.pack(side=LEFT, fill=X, expand=1) self.tree.column('col1', width=20, anchor='center') self.tree.column('col2', width=200, anchor='center') self.tree.column('col3', width=10, anchor='center') self.tree.heading('col1', text='CC') self.tree.heading('col2', text='Descripción') self.tree.heading('col3', text='Valor') self.scroll = Scrollbar(self.f3,orient=VERTICAL,command=self.tree.yview) self.tree.configure(yscrollcommand=self.scroll.set) self.f6 = Frame(self.tab1) self.f6.pack(pady=5,fill=X)#-------------------- self.notesL = Label(self.f6, text='Observaciones:') self.notesL.pack(side=LEFT) self.f7 = Frame(self.tab1) self.f7.pack(pady=5,fill=X)#------------------- self.notesT = Text(self.f7, height=5) self.notesT.pack(fill=X, side=LEFT, expand=1) #-----------------------> TAB 2 self.tab2 = Frame (self.nb) self.tab2.pack() #-----------------------> TAB 3 self.tab3 = Frame (self.nb) self.tab3.pack() #--------------------------------------------------------------- self.nb.add (self.tab1, text="Datos Generales") self.nb.add(self.tab2, text="Referencia de Pago", state=DISABLED) self.nb.add(self.tab3, text="Referencias Bancarias", state=DISABLED) self.nb.pack() #--------------------------------------------------------------- self.fBtn = Frame(self.wrapper) self.fBtn.pack()#------------------------------- self.queryB = Button(self.fBtn, text='Consultar') self.queryB.pack(side=RIGHT) self.deleteB = Button(self.fBtn, text='Borrar') self.deleteB.pack(side=RIGHT) self.updateB = Button(self.fBtn, text='Actualizar') self.updateB.pack(side=RIGHT) self.addB = Button(self.fBtn, text='Agregar') self.addB.pack(side=RIGHT) #========================= ASIDE =========================== """
def __init__(self, parent, controller): Frame.__init__(self, parent) global docID, nombre, refbanco, tree, busqueda, info, delete global e3 lupa = PhotoImage(file='img/lupa.png') docID = StringVar() nombre = StringVar() refbanco = StringVar() busqueda = StringVar() info = IntVar() #WIDGETS #=========================== HEADER ============================ l0 = Label(self, text="BENEFICIARIOS", font="bold") l0.pack(pady=20, side=TOP) #=========================== WRAPPER =========================== wrapper = Frame(self) wrapper.pack(side=TOP, fill=Y) #wrapper.pack(side=LEFT, fill=Y) #UBICA EL FORM A LA IZQ f1 = Frame(wrapper) f1.pack(pady=5, fill=X) #----------------------------------- l1 = Label(f1, text="CC/Nit: ") l1.pack(side=LEFT) e1 = Entry(f1, textvariable=docID, width=20) e1.pack(side=LEFT) e1.bind("<KeyRelease>", caps) e1.focus_set() f2 = Frame(wrapper) f2.pack(pady=5, fill=X) #----------------------------------- l2 = Label(f2, text="Nombre: ") l2.pack(side=LEFT) e2 = Entry(f2, textvariable=nombre, width=60) e2.pack(side=LEFT, fill=X, expand=1) e2.bind("<KeyRelease>", caps) f3 = Frame(wrapper) f3.pack(pady=5, fill=X) #----------------------------------- l3 = Label(f3, text="Referencia Bancaria: ") l3.pack(side=LEFT) e3 = Entry(f3, textvariable=refbanco, width=60) e3.pack(side=LEFT, fill=X, expand=1) e3.bind("<KeyRelease>", caps) f4 = Frame(wrapper) f4.pack(pady=5, fill=X) #----------------------------------- b1 = Button(f4, text="Cargar", bg='navy', foreground='white', activebackground='red3', activeforeground='white', command=cargar) b1.pack(side=RIGHT) b2 = Button(f4, text="Agregar", bg='navy', foreground='white', activebackground='red3', activeforeground='white', command=agregar) b2.pack(side=RIGHT) #========================== TREEVIEW =========================== f5 = Frame(wrapper) f5.pack(pady=5, fill=X) #----------------------------------- tree = Treeview(f5, show="headings", columns=('col1', 'col2')) tree.pack(side=LEFT, fill=X, expand=1) tree.column('col1', width=0, anchor='center') tree.column('col2', width=150, anchor='w') tree.heading('col1', text='CC/Nit') tree.heading('col2', text='Nombre Completo') scroll = Scrollbar(f5, orient=VERTICAL, command=tree.yview) tree.configure(yscrollcommand=scroll.set) f6 = Frame(wrapper) f6.pack(pady=5, fill=X) #----------------------------------- delete = Button(f6, text="Eliminar", bg='navy', foreground='white', activebackground='red3', activeforeground='white', command=borrar) delete.pack(side=RIGHT) e4 = Entry(f6, textvariable=busqueda) e4.pack(side=LEFT) e4.bind("<KeyRelease>", caps) b4 = Button(f6, text='BUSCAR', image=lupa, command=buscar) b4.image = lupa b4.pack(side=LEFT) R1 = Radiobutton(f6, text="CC/nit", variable=info, value=1) R1.pack(side=LEFT) R2 = Radiobutton(f6, text="Nombre", variable=info, value=2) R2.pack(side=LEFT) info.set(1)
def _add_frames(self): # Adding Answer Backup Frame f1 = Frame(self) f1.grid(column=0, row=0, sticky="NWES") for i in range(4): f1.grid_rowconfigure(i, weight=0, pad=5) f1.grid_rowconfigure(4, weight=1, pad=5) for i in range(4): f1.grid_columnconfigure(i, weight=1, pad=5) Label(f1, anchor='e', text='Answers Count : ').grid(column=0, row=0, sticky='EWNS') self.answer_count = StringVar(value=len(self.crawler.answer_list)) Label(f1, anchor='w', textvariable=self.answer_count).grid(column=1, row=0, sticky='EWNS') Label(f1, anchor='e', text='User Name : ').grid(column=2, row=0, sticky='EWNS') self.user = StringVar(value='Unknown') Label(f1, anchor='w', textvariable=self.user).grid(column=3, row=0, sticky='EWNS') tf_col = '#e6e6e6' tf = Tkinter.Frame(f1, relief=GROOVE, borderwidth='2p') tf.grid(row=1, columnspan=2, column=0, sticky='EWNS') Label(tf, text='Quora User Options', bg=tf_col, anchor='c').grid(column=0, row=0, columnspan=2, sticky='EWNS') Button(tf, text='Login', command=lambda : self.thread('login'), highlightbackground=tf_col).grid(column=0, row=1, sticky='EWNS') Button(tf, text='Logout', command=lambda : self.thread('logout'), highlightbackground=tf_col).grid(column=1, row=1, sticky='EWNS') tf.grid_rowconfigure(0, weight=1, pad=5) tf.grid_rowconfigure(1, weight=1, pad=5) tf.grid_columnconfigure(0, weight=1, pad=5) tf.grid_columnconfigure(1, weight=1, pad=5) tf = Frame(f1, relief=GROOVE, borderwidth='2p') tf.grid(row=1, columnspan=2, column=2, sticky='EWNS') Label(tf, text='Answer List Option', bg=tf_col, anchor='c').grid(column=0, columnspan=2, row=0, sticky='EWNS') Button(tf, text='Reset', command=lambda : self.thread('reset'), highlightbackground=tf_col).grid(column=0, row=1, sticky='EWNS') Button(tf, text='Update', command=lambda : self.thread('update'), highlightbackground=tf_col).grid(column=1, row=1, sticky='EWNS') tf.grid_rowconfigure(0, weight=1, pad=5) tf.grid_rowconfigure(1, weight=1, pad=5) tf.grid_columnconfigure(0, weight=1, pad=5) tf.grid_columnconfigure(1, weight=1, pad=5) # Add Progress Bar self.backup_progress = Progressbar(f1, orient="horizontal", length=100, mode="determinate") self.backup_progress.grid(row=2, columnspan=4, column=0, sticky='EWNS') # Adding Status Pane self.backup_status = StringVar(value='Ready') Label(f1, textvariable=self.backup_status, anchor='w').grid(row=3, column=0, columnspan=4, sticky='EWNS') # Adding The list of all answers tree = Treeview(f1, columns=('sno', 'date', 'question')) tree.heading('sno', text='S. No') tree.heading('date', text='Date') tree.heading('question', text='Question') tree.column("#0", width=0, stretch=False) tree.column('sno', width=40, stretch=False, anchor='center') tree.column('date', width=120, stretch=False, anchor='center') tree.column('question', stretch=True, anchor='w') tree.grid(column=0, columnspan=4, row=4, sticky='EWNS') tree.bind("<Double-1>", self.tree_item_click) self.answer_tree = tree self.populate_tree() f2 = Frame(self) self.add(f1, text='Answer Backup', underline=7) self.add(f2, text='Analytics')
def __init__(self, master, xml=None, heading_text=None, heading_anchor=None, padding=None, cursor=None, takefocus=None, style=None): Frame.__init__(self, master, class_="XML_Viwer") self._vsb = Scrollbar(self, orient=VERTICAL) self._hsb = Scrollbar(self, orient=HORIZONTAL) kwargs = {} kwargs["yscrollcommand"] = lambda f, l: autoscroll(self._vsb, f, l) kwargs["xscrollcommand"] = lambda f, l: autoscroll(self._hsb, f, l) if style is not None: kwargs["style"] = style if padding is not None: kwargs["padding"] = padding if cursor is not None: kwargs["cursor"] = cursor if takefocus is not None: kwargs["takefocus"] = takefocus self._treeview = Treeview(self, **kwargs) if heading_text is not None: if heading_anchor is not None: self._treeview.heading("#0", text=heading_text, anchor=heading_anchor) else: self._treeview.heading("#0", text=heading_text) self._treeview.bind("<<TreeviewOpen>>", self._on_open) self._treeview.bind("<<TreeviewClose>>", self._on_close) # Without this line, horizontal scrolling doesn't work properly. self._treeview.column("#0", stretch=False) self._vsb['command'] = self._treeview.yview self._hsb['command'] = self._treeview.xview self._treeview.grid(column=0, row=0, sticky=N + S + W + E) self._vsb.grid(column=1, row=0, sticky=N + S) self._hsb.grid(column=0, row=1, sticky=E + W) self.grid_columnconfigure(0, weight=1) self.grid_rowconfigure(0, weight=1) self._element_tree = None self._item_ID_to_element = {} if xml is not None: self.parse_xml(xml)
def initUI(self): self.pack(fill=BOTH, expand=True) Grid.columnconfigure(self, 0, weight=1) Label(self, text='Classroom Finder', font=('Arial', 20, 'bold'), bg='cyan', fg='white').grid(sticky=W + E, columnspan=3) # classroom finder header Label(self, text='Url:').grid(column=0, row=1, pady=10, padx=(50, 0)) self.urlentry = Entry(self, width=100) # url entry to get url self.urlentry.grid(column=1, row=1, padx=(0, 80)) self.color_label = Label( self, bg='red', width=10) # color label to make red,yellow,green self.color_label.grid(column=0, row=2, sticky=E, columnspan=2, padx=(120), pady=(0, 40)) self.fetchbtn = Button(self, text='Fetch', height=2, width=10, command=self.dynamic) # fetch button self.fetchbtn.grid(column=1, row=2, sticky=E, padx=(0, 30), pady=(10, 50)) Label(self, text='Filters', bg='cyan', fg='white', font=('Arial', 20, 'bold'), width=10).grid(column=0, row=3, padx=10) self.frame = Frame(self, borderwidth=3, relief=GROOVE) # frame to keep filters part self.frame.grid(column=0, row=4, columnspan=3, sticky=W + E + S + N, pady=10, padx=10) Label(self.frame, text='Where am I?').grid(sticky=W) self.where_combo = Combobox(self.frame, state='readonly') # where am i combobox self.where_combo.grid(column=1, row=0, pady=20) self.where_combo.bind( '<<ComboboxSelected>>', self.change_build) # to update room button wrt where combo Label(self.frame, text='Room').grid(sticky=W) self.room_combo = Combobox(self.frame, state='readonly') # rooms combobox self.room_combo.grid(column=1, row=1) Label(self.frame, text='Start').grid(sticky=W) self.start_combo = Combobox(self.frame, state='readonly', width=7) # start time combobox self.start_combo.grid(column=1, row=2, pady=20, sticky=W) Label(self.frame, text='End').grid(column=2, row=2, sticky=W) self.end_combo = Combobox(self.frame, state='readonly', width=7) # end time combobox self.end_combo.grid(column=3, row=2, sticky=W) Label(self.frame, text='Day').grid(sticky=W) self.day_combo = Combobox(self.frame, state='readonly') # days combobox self.day_combo.grid(column=1, row=3, pady=(0, 20)) self.search = Button(self.frame, text='Search', width=10, height=2, command=self.add_treeview) # seach button self.search.grid(padx=(0, 50), columnspan=2) Label(self.frame, text='Classroom results', bg='gray', fg='white').grid(sticky=N + E + W, column=4, row=0, rowspan=5, padx=(55, 0)) self.scroll = Scrollbar( self.frame, orient='vertical') # vertical scrollbar for treeview self.tree = Treeview(self.frame, columns=('', '', '', '', ''), selectmode='extended', show='headings') listofcolumn = [ 'Room', 'Traffic', 'Availability %', 'Closeness', 'Overall Score' ] # colums to treeview counter = 1 for column in listofcolumn: self.tree.column('#' + str(counter), width=90) # to resize columns self.tree.heading('#' + str(counter), text=column, anchor=CENTER) # to set headings counter += 1 self.scroll.config(command=self.tree.yview) self.tree.config(yscrollcommand=self.scroll.set) self.tree.grid(column=4, row=0, rowspan=5, padx=(40, 0), pady=(30, 0)) self.scroll.grid(column=5, row=0, rowspan=5, sticky=N + S, pady=(30, 0)) self.urlentry.insert( 0, 'https://www.sehir.edu.tr/en/announcements/2018-2019-bahar-donemi-ders-programi' )
def __init__(self, parent, controller): Frame.__init__(self, parent) global info, tree #VARIABLES info = IntVar() #WIDGETS #========================= HEADER =========================== self.header = Label(self, text="ADMINISTRADOR DE DOCUMENTOS", font="bold") self.header.pack(pady=20, side=TOP) #========================= WRAPPER 1 =========================== self.wrapper = Frame (self) self.wrapper.pack(side=LEFT, fill=Y) #======================== DOCUMENTOS DE ======================== self.f0 = Frame(self.wrapper) self.f0.pack(pady=5,fill=X)#------------------------------------ self.lf1 = LabelFrame(self.f0, text="Documentos de")#----------> self.f1 = Frame(self.lf1) self.f1.pack(pady=5, side=LEFT) self.pR1 = Radiobutton(self.f1, text="Propietario", variable=info, value=1, command=select) self.pR1.grid(row=0, column=0, sticky=W) self.aR2 = Radiobutton (self.f1, text="Arrendatario", variable=info, value=2, command=select) self.aR2.grid(row=1, column=0, sticky=W) self.tR3 = Radiobutton (self.f1, text="Tercero", variable=info, value=3, command=select) self.tR3.grid(row=2, column=0, sticky=W) self.lf1.pack(side=LEFT)#<-------------------------------------- #====================== FECHAS DE BÚSQUEDA ===================== self.lf2 = LabelFrame(self.f0, text="Fechas de búsqueda")#------> self.f2 = Frame(self.lf2) self.f2.pack(pady=5)#--------------------------- self.deL = Label(self.f2, text='De:') self.deL.pack(side=LEFT) self.deCbx = Combobox(self.f2, width=32) self.deCbx.set('') self.deCbx.pack(side=LEFT) self.f3 = Frame(self.lf2) self.f3.pack(pady=5)#--------------------------- self.hastaL = Label(self.f3, text='Hasta:') self.hastaL.pack(side=LEFT) self.hastaCbx = Combobox(self.f3, width=30) self.hastaCbx.set('') self.hastaCbx.pack(side=LEFT) self.lf2.pack(side=LEFT, fill=X)#<--------------------------- #========================= WRAPPER 2 =========================== self.wrapper2 = Frame (self.wrapper) self.wrapper2.pack(pady=5,fill=X) #========================= BENEFICIARIO ======================== self.box1 = Frame(self.wrapper2) self.box1.pack(side=LEFT) #--------------------------------------------------------------- self.f4 = Frame(self.box1) self.f4.pack() self.l1 = Label(self.f4, text="Beneficiario") self.l1.pack() tree = Treeview(self.f4, height=7, show="headings", columns=('col1','col2')) tree.pack(side=LEFT, fill=X, expand=1) tree.column('col1', width=100, anchor='center') tree.column('col2', width=180, anchor='center') tree.heading('col1', text='CC') tree.heading('col2', text='Nombres') self.scroll = Scrollbar(self.f4,orient=VERTICAL,command=tree.yview) tree.configure(yscrollcommand=self.scroll.set) self.f5 = Frame(self.box1)#---------------------------------- self.f5.pack() self.lf3 = LabelFrame(self.f5, text="Factura Propietario")#----> self.e1 = Entry(self.lf3, width=12).pack(side=LEFT) self.anularCk = Checkbutton(self.lf3, text="Anular").pack(side=LEFT) self.viewB = Button(self.lf3, text='Visualizar').pack(side=LEFT) self.lf3.pack(side=LEFT)#<-------------------------------------- #========================== FACTURAS ========================== self.box2 = Frame(self.wrapper2) self.box2.pack(side=LEFT) #--------------------------------------------------------------- self.f6 = Frame(self.box2) self.f6.pack() self.l2 = Label(self.f6, text="Facturas") self.l2.pack() self.tree = Treeview(self.f6, height=7, show="headings", columns=('col1','col2')) self.tree.pack(side=LEFT, fill=X, expand=1) self.tree.column('col1', width=100, anchor='center') self.tree.column('col2', width=100, anchor='center') self.tree.heading('col1', text='Número') self.tree.heading('col2', text='Valor') self.scroll = Scrollbar(self.f6,orient=VERTICAL,command=self.tree.yview) self.tree.configure(yscrollcommand=self.scroll.set) self.f7 = Frame(self.box2)#---------------------------------- self.f7.pack() self.lf4 = LabelFrame(self.f7, text="Factura Arrendatario")#----> self.e1 = Entry(self.lf4, width=12).pack(side=LEFT) self.anularCk = Checkbutton(self.lf4, text="Anular").pack(side=LEFT) self.viewB = Button(self.lf4, text='Ver', width=5).pack(side=LEFT) self.lf4.pack(side=LEFT)#<-------------------------------------- #========================== RECIBOS ========================== self.box3 = Frame(self.wrapper2) self.box3.pack(side=LEFT) #--------------------------------------------------------------- self.f8 = Frame(self.box3) self.f8.pack() self.l3 = Label(self.f8, text="Recibos de caja") self.l3.pack() self.tree = Treeview(self.f8, height=7, show="headings", columns=('col1','col2')) self.tree.pack(side=LEFT, fill=X, expand=1) self.tree.column('col1', width=100, anchor='center') self.tree.column('col2', width=100, anchor='center') self.tree.heading('col1', text='Número') self.tree.heading('col2', text='Valor') self.scroll = Scrollbar(self.f8,orient=VERTICAL,command=self.tree.yview) self.tree.configure(yscrollcommand=self.scroll.set) self.f9 = Frame(self.box3)#---------------------------------- self.f9.pack() self.lf5 = LabelFrame(self.f9, text="Recibos de caja")#----> self.e1 = Entry(self.lf5, width=12).pack(side=LEFT) self.anularCk = Checkbutton(self.lf5, text="Anular").pack(side=LEFT) self.viewB = Button(self.lf5, text='Ver', width=5).pack(side=LEFT) self.lf5.pack(side=LEFT)#<-------------------------------------- #===================== COMPROBANTE DE PAGO ===================== self.box4 = Frame(self.wrapper2) self.box4.pack(side=LEFT) #--------------------------------------------------------------- self.f10 = Frame(self.box4) self.f10.pack() self.l4 = Label(self.f10, text="Comprobantes de pago") self.l4.pack() self.tree = Treeview(self.f10, height=7, show="headings", columns=('col1','col2')) self.tree.pack(side=LEFT, fill=X, expand=1) self.tree.column('col1', width=100, anchor='center') self.tree.column('col2', width=100, anchor='center') self.tree.heading('col1', text='Número') self.tree.heading('col2', text='Valor') self.scroll = Scrollbar(self.f10,orient=VERTICAL,command=self.tree.yview) self.tree.configure(yscrollcommand=self.scroll.set) self.f11 = Frame(self.box4)#---------------------------------- self.f11.pack() self.lf6 = LabelFrame(self.f11, text="Pagos")#----> self.e1 = Entry(self.lf6, width=12).pack(side=LEFT) self.anularCk = Checkbutton(self.lf6, text="Anular").pack(side=LEFT) self.viewB = Button(self.lf6, text='Ver', width=5).pack(side=LEFT) self.lf6.pack(side=LEFT)#<--------------------------------------
def __init__(self): Frame.__init__(self) self.style = Style() self.style.theme_use("default") self.master.title("Log viewer") self.pack(fill=BOTH, expand=True) self.used = [] # List of currently plotted series ([str]) self.series = {} # List of all series ({str -> [number]}) self.names = [] # List of all nodes in tree view ([str]) self.queues = [] # List of all queues ([str]) self.logs = {} # List of all text logs ({str -> [str]}) self.rowconfigure(1, weight=1) self.columnconfigure(6, weight=3) self.columnconfigure(11, weight=1) # Series selection takes row 1-2, col 0-2 self.series_ui = Treeview(self) self.series_ui.grid(row=1, column=0, columnspan=2, rowspan=2, sticky=N+S) self.series_ui.configure(show="tree") self.series_ui.bind("<Double-Button-1>", self.onselect) self.series_ui.tag_configure("graphall", foreground="#070") self.series_ui.tag_configure("graphnone", foreground="#000") self.series_ui.tag_configure("graphsome", foreground="#007") series_ui_scroll = Scrollbar(self, command=self.series_ui.yview, orient=VERTICAL) series_ui_scroll.grid(row=1, column=2, rowspan=2, sticky=N+S) self.series_ui["yscrollcommand"] = series_ui_scroll.set # The plot takes row 1-2, col 3-6 move_mode = StringVar() move_mode.set("pan") show_path = IntVar() show_path.set(0) event_bars = IntVar() event_bars.set(1) show_debug = IntVar() show_debug.set(1) show_error = IntVar() show_error.set(1) show_warning = IntVar() show_warning.set(1) show_info = IntVar() show_info.set(1) self.plot = HackPlot(self, move_mode, show_path, event_bars, [(show_debug, "[DEBUG]"), (show_error, "[ERROR]"), (show_warning, "[WARNING]"), (show_info, "[INFO]")]) self.plot.canvas.grid(row=1, column=3, columnspan=4, rowspan=2, sticky=N+S+E+W) # Text logs take row 1-2, col 7-12 self.plot.listbox.grid(row=1, column=7, columnspan=5, sticky=N+S+E+W) listbox_yscroll = Scrollbar(self, command=self.plot.listbox.yview, orient=VERTICAL) listbox_yscroll.grid(row=1, column=12, sticky=N+S) self.plot.listbox["yscrollcommand"] = listbox_yscroll.set listbox_xscroll = Scrollbar(self, command=self.plot.listbox.xview, orient=HORIZONTAL) listbox_xscroll.grid(row=2, column=7, columnspan=5, sticky=E+W) self.plot.listbox["xscrollcommand"] = listbox_xscroll.set # Controls take row 0, col 0-12 Button(self, text="Load Directory", command=self.loaddir).grid(row=0, column=0) Button(self, text="Load File", command=self.loadfile).grid(row=0, column=1) Button(self, text="Fit X", command=self.plot.fit_x).grid(row=0, column=3, sticky=W) Button(self, text="Fit Y", command=self.plot.fit_y).grid(row=0, column=4, sticky=W) Button(self, text="Fit Auto", command=self.plot.fit_auto).grid(row=0, column=5, sticky=W) Button(self, text="Fit Tele", command=self.plot.fit_tele).grid(row=0, column=6, sticky=W) # Plot controls in a subframe to manage padding so it doesn't look awful move_mode_control = Frame(self, padx=10) Radiobutton(move_mode_control, text="Pan", value="pan", variable=move_mode).grid(row=0, column=0, sticky=W) Radiobutton(move_mode_control, text="Zoom In", value="zoomin", variable=move_mode).grid(row=0, column=1, sticky=W) Radiobutton(move_mode_control, text="Zoom Out", value="zoomout", variable=move_mode).grid(row=0, column=2, sticky=W) move_mode_control.grid(row=0, column=7, sticky=W) Checkbutton(self, text="Event Bars", variable=event_bars, command=self.plot.show_textlogs).grid(row=0, column=8, sticky=W) Checkbutton(self, text="Debug", variable=show_debug, command=self.plot.show_textlogs).grid(row=0, column=9, sticky=W) Checkbutton(self, text="Error", variable=show_error, command=self.plot.show_textlogs).grid(row=0, column=10, sticky=W) Checkbutton(self, text="Warning", variable=show_warning, command=self.plot.show_textlogs).grid(row=0, column=11, sticky=W) Checkbutton(self, text="Info", variable=show_info, command=self.plot.show_textlogs).grid(row=0, column=12, sticky=W) Checkbutton(self, text="Directories", variable=show_path, command=self.plot.show_textlogs).grid(row=0, column=13, sticky=E)