def main(): global LARGE_FONT, realpositive, port LARGE_FONT = ("Verdana", 12) x, y = 648, 520 #root = tk.Tk() root = ThemedTk(theme="adapta") realpositive = tk.IntVar() port = tk.StringVar() global startpage, synthesis, darlington, pageThree, transferFunction startpage = tk.Frame(root) synthesis = tk.Frame(root) darlington = tk.Frame(root) pageThree = tk.Frame(root) transferFunction = tk.Frame(root) for frame in (startpage, synthesis, darlington, pageThree, transferFunction): frame.grid(row=0, column=0, sticky='news') StartPage() Synthesisframe() Darlingtonframe() PageThreeframe() TransferFunctionframe() root.update_idletasks() # Update "requested size" from geometry manager a, a0 = str(x), x / 2 b, b0 = str(y), y / 2 root.geometry("+%d+%d" % ((root.winfo_screenwidth() / 2) - a0, (root.winfo_screenheight() / 3) - b0)) root.deiconify() root.resizable(width=False, height=False) menubar = tk.Menu(root) filemenu = tk.Menu(menubar, tearoff=0) filemenu.add_command(label="Tutorial", command=toturial) filemenu.add_command(label="About", command=About) filemenu.add_command(label="Exit", command=root.destroy) menubar.add_cascade(label="MENU", menu=filemenu) root.config(menu=menubar) root.title("LC & RC Filter") root.bind('<Escape>', lambda e: root.destroy()) root.protocol("WM_DELETE_WINDOW", root.iconify) raise_frame(startpage) root.mainloop()
background="#002b36", foreground="green", borderwidth=0, highlightthickness=0, ) price_1.pack(pady=(0, 10)) price_2 = Radiobutton( frame_3, text="High to Low", variable=price_choice, value=2, background="#002b36", foreground="green", borderwidth=0, highlightthickness=0, ) price_2.pack(pady=(0, 10)) button_for_price = ttk.Button(frame_3, text="Show Result", command=pricing, width=20) button_for_price.pack() statusbar = Label(root, text="Welcome to ChotaPacket", relief=SUNKEN, anchor=W) statusbar.pack(side=BOTTOM, fill=X) root.bind("<Control-o>", open_google_link) entry.bind("<Return>", scrap) entry1.bind("<Return>", showimage) entry5.bind("<Return>", pricing) root.mainloop()
def change_theme(): chosen_theme = theme_choice.get() color_tuple = color_dict.get(chosen_theme) fg_color, bg_color = color_tuple[0], color_tuple[1] text_editor.config(background=bg_color, fg=fg_color) count = 0 for i in color_dict: color_theme.add_radiobutton(label = i, image =color_icons[count], variable = theme_choice,compound = tk.LEFT,command = change_theme) count += 1 main_application.config(menu = main_menu) main_application.protocol('WM_DELETE_WINDOW',exit_func) #shortcuts main_application.bind("<Control-n>",new_file) main_application.bind("<Control-o>",open_file) main_application.bind("<Control-s>",save_file) main_application.bind("<Control-Alt-s>",save_as) main_application.bind("<Control-q>",exit_func) main_application.bind("<Control-f>",find_function) main_application.bind("<Control-b>",change_bold) main_application.bind("<Control-i>",change_italic) main_application.bind("<Control-u>",underline_text) main_application.bind("<Control-Alt-x>",clear_all) main_application.bind("<Control-z>",undo) main_application.bind("<Control-y>",redo) main_application.mainloop()
def main(): global message message = "" if "alarm.mp3" not in os.listdir("."): print("alarm.mp3 not found please check it out") time.sleep(5) raise Exception("alarm.mp3 not found please check it out") LARGE_FONT = ("Verdana", 12) root = ThemedTk(theme="adapta") root.title('HOTSPOT') root.bind('<Escape>', lambda e: root.destroy()) root.protocol("WM_DELETE_WINDOW", root.iconify) root.update_idletasks() try: root.iconbitmap('icon.ico') except: pass home = ttk.Frame(root) home.grid(row=0, column=0, sticky='news') home.rowconfigure([0], weight=1) home.columnconfigure([0, 1], weight=1) server = ttk.Frame(root) server.grid(row=0, column=0, sticky='news') server.rowconfigure([0, 1, 2, 3], weight=1) server.columnconfigure([0], weight=1) status5 = ttk.Label(server, text="", font=LARGE_FONT, anchor=tk.CENTER) status5.grid(row=2, column=0, sticky=tk.N + tk.S + tk.E + tk.W) status7 = ttk.Label(server, text="", font=LARGE_FONT, anchor=tk.CENTER) status7.grid(row=1, column=0, sticky=tk.N + tk.S + tk.E + tk.W) progress2 = ttk.Progressbar(server, orient="horizontal", mode="determinate", cursor='spider') progress2.grid(row=3, column=0, sticky=tk.N + tk.S + tk.E + tk.W) progress2["maximum"] = 100 button3 = ttk.Button(server, text="Start", width=15, command=lambda: Thread(target=lambda: makeserver( status7, progress2, server)).start()) button3.grid(row=1, column=2, sticky=tk.N + tk.S + tk.E + tk.W) button3 = ttk.Button(home, text="Recieve", width=15, command=lambda: raise_frame(server, "R", status5)) button3.grid(row=0, column=0, sticky=tk.N + tk.S + tk.E + tk.W) button4 = ttk.Button(home, text="Send", width=15, command=lambda: raise_frame(page, "S", status6)) button4.grid(row=0, column=1, sticky=tk.N + tk.S + tk.E + tk.W) page = ttk.Frame(root) page.grid(row=0, column=0, sticky='news') page.rowconfigure([0, 1, 2], weight=1) page.columnconfigure([0], weight=1) progress = ttk.Progressbar(page, orient="horizontal", mode="determinate", cursor='spider') progress.grid(row=1, column=0, sticky=tk.N + tk.S + tk.E + tk.W) progress["maximum"] = 100 status6 = ttk.Label(page, text="", font=LARGE_FONT, anchor=tk.CENTER) status6.grid(row=2, column=0, sticky=tk.N + tk.S + tk.E + tk.W) startpage = ttk.Frame(page) startpage.grid(row=0, column=0, sticky='news') startpage.rowconfigure([0, 1, 2], weight=1) startpage.columnconfigure([0, 1, 2], weight=1) HOST = ttk.Entry(startpage) HOST.grid(row=1, column=1, sticky=tk.N + tk.S + tk.E + tk.W) PORT = ttk.Entry(startpage) PORT.grid(row=2, column=1, sticky=tk.N + tk.S + tk.E + tk.W) PORT.insert(tk.END, '65432') button = ttk.Button( startpage, text="send", width=15, command=lambda: Thread(target=lambda: connect(page, progress, HOST.get( ), int(PORT.get()))).start()) button.grid(row=2, column=2, sticky=tk.N + tk.S + tk.E + tk.W) status = ttk.Label(startpage, text="click for connecting and sending", font=LARGE_FONT, anchor=tk.CENTER) status.grid(row=0, column=0, sticky=tk.N + tk.S + tk.E + tk.W) status1 = ttk.Label(startpage, text="", font=LARGE_FONT, anchor=tk.CENTER) status1.grid(row=0, column=2, sticky=tk.N + tk.S + tk.E + tk.W) status2 = ttk.Label(startpage, text="", font=LARGE_FONT, anchor=tk.CENTER) status2.grid(row=0, column=1, sticky=tk.N + tk.S + tk.E + tk.W) status3 = ttk.Label(startpage, text="IP ", font=LARGE_FONT, anchor=tk.CENTER) status3.grid(row=1, column=0, sticky=tk.N + tk.S + tk.E + tk.W) status4 = ttk.Label(startpage, text="PORT", font=LARGE_FONT, anchor=tk.CENTER) status4.grid(row=2, column=0, sticky=tk.N + tk.S + tk.E + tk.W) button2 = ttk.Button(startpage, text="open file", width=15, command=lambda: Open(progress)) button2.grid(row=1, column=2, sticky=tk.N + tk.S + tk.E + tk.W) center(root) menubar = tk.Menu(root) filemenu = tk.Menu(menubar, tearoff=False) filemenu.add_command(label="Home", command=lambda: raise_frame(home)) filemenu.add_command(label="Exit", command=root.destroy) menubar.add_cascade(label="MENU", menu=filemenu) root.config(menu=menubar) root.deiconify() root.resizable(width=False, height=False) raise_frame(home) root.mainloop()
class CredGui(): def __init__(self): self.master = ThemedTk(theme='equilux', background=True) #self.master.config(background = True) self.master.title('3ncryp710n T00lz') #self.style.set_theme('scidgrey') self.statuslabel = tk.StringVar() self.width = 800 self.height = 530 screen_width = self.master.winfo_screenwidth() screen_height = self.master.winfo_screenheight() x = (screen_width // 2) - (self.width // 2) y = (screen_height // 2) - (self.height // 2) self.master.geometry(f'{self.width}x{self.height}+{x}+{y}') ttk.Label(self.master, text="Data File").grid(row=0) ttk.Label(self.master, text="Decryption Key <C-k>").grid(row=1) self.filepath = ttk.Entry(self.master) self.keyentry = ttk.Entry(self.master) self.filepath.grid(row=0, column=1, sticky=tk.W) self.keyentry.grid(row=1, column=1, sticky=tk.W) ttk.Button(self.master, text='Open <C-o>', command=self.opendatafile).grid(row=0, column=2, sticky=tk.W) ttk.Button(self.master, text='New <C-n>', command=self.newfile).grid(row=0, column=2, sticky=tk.E) self.status = ttk.Label(self.master, textvariable=self.statuslabel) self.status.grid(row=2, column=1, sticky=tk.W) ttk.Label(self.master, text='Search <Ctr+f>').grid(row=3) self.searchvar = tk.StringVar() self.searchentry = ttk.Entry(self.master, width=40, textvariable=self.searchvar) self.searchentry.grid(row=3, column=1, sticky=tk.W, columnspan=2) self.searchvar.trace('w', self.search) self.myscroll = ttk.Scrollbar(self.master) self.myscroll.grid(row=4, column=3, sticky='nws') self.mylist = tk.Listbox(self.master, yscrollcommand=self.myscroll.set, width=50, bg='#414141', fg='#A3A3A3') #self.mylist = ttk.Combobox(self.master, width = 50, height = 50) self.mylist.grid(row=4, column=1, columnspan=2, sticky=tk.W) self.myscroll.config(command=self.mylist.yview) ttk.Button(self.master, text='Encrypt <C-e>', command=self.enc).grid(row=10, column=1, sticky=tk.W, pady=4) ttk.Button(self.master, text='Decrypt <C-d>', command=self.dec).grid(row=10, column=2, sticky=tk.W, pady=4) self.master.grid_columnconfigure(5, weight=2) self.master.grid_columnconfigure(4, weight=2) ttk.Separator(self.master).grid(row=14, sticky='ew', columnspan=6) ttk.Label(self.master, text="Credential").grid(row=15, pady=4) ttk.Label(self.master, text="Section <C-s>").grid(row=16, column=1, sticky=tk.W) ttk.Label(self.master, text="Username <C-u>").grid(row=16, column=2, sticky=tk.W) self.secentry = ttk.Entry(self.master) self.userentry = ttk.Entry(self.master) self.secentry.grid(row=17, column=1, sticky=tk.W) self.userentry.grid(row=17, column=2, sticky=tk.W) ttk.Button(self.master, text='Copy Password <C-c>', command=self.copy_passwd).grid(row=18, column=4, sticky=tk.E, pady=4) self.passlabel = ttk.Label(self.master, text="Password <C-p>") self.passlabel.grid(row=18, pady=4) #, column = 0, sticky=tk.W) self.passvar = tk.StringVar() self.passentry = ttk.Entry(self.master, width=40, textvariable=self.passvar) self.passentry.grid(row=18, column=1, sticky='ew', columnspan=2, pady=4) self.passvar.trace('w', self.check_passwd_strength) self.pbval = tk.IntVar(value=0) self.passcheckphrase = tk.StringVar() self.passcheckl = ttk.Label(self.master, textvariable=self.passcheckphrase) self.passcheckl.grid(row=19, column=0) self.pb = ttk.Progressbar(self.master, orient=tk.HORIZONTAL, variable=self.pbval, maximum=8, mode='determinate', length=360) self.pb.grid(row=19, column=1, sticky='ew', columnspan=2) ttk.Label(self.master, text="Password Lengt <C-h>").grid(row=20, column=1, sticky=tk.W) ttk.Label(self.master, text="Password Exclude <C-x>").grid(row=20, column=2, sticky=tk.W) ttk.Button(self.master, text='Encrypt and Quit <C-q>', command=self.encrypt_and_quit).grid(row=20, column=4, sticky=tk.E, pady=4) self.passlene = ttk.Entry(self.master) self.passexe = ttk.Entry(self.master) self.passlene.grid(row=21, column=1, sticky=tk.W) self.passexe.grid(row=21, column=2, sticky=tk.W) self.passlene.insert(tk.END, '32') self.passexe.insert(tk.END, r'%\()|{}[]:";' + "'" + '<>,./?') ttk.Button(self.master, text='Generate Password <C-g>', command=self.new_password).grid(row=22, column=1, sticky=tk.W, pady=4) ttk.Button(self.master, text='Add Password <C-a>', command=self.add_cred).grid(row=22, column=2, sticky=tk.W, pady=4) self.master.bind('<Control-o>', lambda event: self.opendatafile()) self.master.bind('<Control-n>', lambda event: self.newfile()) self.master.bind('<Control-e>', lambda event: self.enc()) self.master.bind('<Control-d>', lambda event: self.dec()) self.keyentry.bind('<Return>', lambda event: self.dec()) self.master.bind('<Control-c>', lambda event: self.copy_passwd()) self.master.bind('<Control-v>', lambda event: self.paste_passwd()) self.master.bind('<Control-g>', lambda event: self.new_password()) self.master.bind('<Control-a>', lambda event: self.add_cred()) self.master.bind('<Control-q>', lambda event: self.encrypt_and_quit()) self.master.bind('<Control-l>', lambda event: self.clear()) self.master.bind('<Control-r>', lambda event: self.del_cred()) self.master.bind('<Control-f>', lambda event: self.searchentry.focus_set()) self.master.bind('<Control-p>', lambda event: self.passentry.focus_set()) self.master.bind('<Control-s>', lambda event: self.secentry.focus_set()) self.master.bind('<Control-u>', lambda event: self.userentry.focus_set()) self.master.bind('<Control-k>', lambda event: self.keyentry.focus_set()) self.master.bind('<Control-x>', lambda event: self.passexe.focus_set()) self.master.bind('<Control-h>', lambda event: self.passlene.focus_set()) #self.searchentry.bind('<Key>', self.search) #self.searchentry.bind('<FocusIn>', self.search) self.master.bind('<<ListboxSelect>>', self.lbselect) self.mylist.bind('<Up>', self.lbselect) self.mylist.bind('<Down>', self.lbselect) self.master.mainloop() def encrypt_and_quit(self): self.enc() self.master.quit() def new_password(self): passlen = self.passlene.get() if passlen == '': passlen = 16 else: passlen = int(passlen) passexclude = self.passexe.get() password = generate_password(passlen, passexclude) self.passentry.delete(0, tk.END) self.passentry.insert(tk.END, password) def check_passwd_strength(self, *args): password = self.passentry.get() if isinstance(password, bytes): password = password.decode('utf-8') if password == '': self.pbval.set(0) self.passcheckphrase.set('') self.passlabel.config(background=None) #self.passlabel.config(background = 'grey') else: passstr = get_pass_strength(password) outputphrase = [ 'bad', 'very weak', 'weak', 'slightly weak', 'slightly strong', 'strong', 'very strong', 'excellent' ] outputcol = [ 'red', 'orange', 'yellow', 'pale green', 'green', 'deep sky blue', 'blue', 'purple' ] self.pbval.set(passstr + 1) self.passcheckphrase.set(outputphrase[passstr]) self.passlabel.config(background=outputcol[passstr]) def add_cred(self): section = self.secentry.get() username = self.userentry.get() password = self.passentry.get() fabspath = self.filepath.get() config = configparser.ConfigParser() config.read(fabspath) if not section in config.sections(): config.add_section(section) if username == '': self.statuslabel.set('Username empty, please fillin.') self.status.config(background='red') else: config[section][username] = password with open(fabspath, 'w') as f: config.write(f) self.statuslabel.set('Credential added') self.status.config(background='green') self._readfile(fabspath) self.userentry.delete(0, tk.END) self.passentry.delete(0, tk.END) self.search(None) def lbselect(self, event): def _bytes_to_str(b): if isinstance(b, bytes): b = b.decode('utf-8') return b idx_t = self.mylist.curselection() if len(idx_t) > 0: idx = idx_t[0] kv = self.mylist.get(idx_t) kv = _bytes_to_str(kv) self.secentry.delete(0, tk.END) self.userentry.delete(0, tk.END) self.passentry.delete(0, tk.END) if kv != '': if kv[0] == '[': self.secentry.insert(tk.END, kv[1:-1]) else: kv_l = kv.split('=', 1) key = kv_l[0].replace(' ', '') val = kv_l[1].replace(' ', '') while True: idx -= 1 s = self.mylist.get((idx, )) s = _bytes_to_str(s) if s[0] == '[': self.secentry.insert(tk.END, s[1:-1]) self.userentry.insert(tk.END, key) self.passentry.insert(tk.END, val) break def del_cred(self): section = self.secentry.get() username = self.userentry.get() fabspath = self.filepath.get() config = configparser.ConfigParser() config.read(fabspath) if not section in config.sections(): self.statuslabel.set('No Credential Found') self.status.config(background='red') else: if username == '': config.remove_section(section) else: config.remove_option(section, username) with open(fabspath, 'w') as f: config.write(f) self.statuslabel.set('Credential Removed') self.status.config(background='green') self._readfile(fabspath) self.secentry.delete(0, tk.END) self.userentry.delete(0, tk.END) self.passentry.delete(0, tk.END) self.search(None) def clear(self): focus = self.master.focus_get() if isinstance(focus, ttk.Entry): focus.delete(0, tk.END) def search(self, *args): config = configparser.ConfigParser() fabspath = self.filepath.get() try: config.read(fabspath) except: self.statuslabel.set('File not in searchable format.') self.status.config(background='red') else: self.mylist.delete(0, tk.END) buf = io.StringIO() searchkey = self.searchentry.get() p = re.compile(searchkey) searchres = configparser.ConfigParser() for section in config.sections(): res = p.search(section) if res is not None: if not section in searchres.sections(): searchres.add_section(section) for k, v in config.items(section): searchres[section][k] = v else: for k, v in config.items(section): res = p.search(k) if res is not None: if not section in searchres.sections(): searchres.add_section(section) searchres[section][k] = v searchres.write(buf) c = buf.getvalue() self.mylist.insert(tk.END, *c.splitlines()) buf.close() def paste_passwd(self): passwd = pyperclip.paste() self.passentry.delete(0, tk.END) self.passentry.insert(tk.END, passwd) self.status.config(background='green') self.statuslabel.set('Password Pasted From Clipboard') def copy_passwd(self): password = self.passentry.get() pyperclip.copy(password) self.status.config(background='green') self.statuslabel.set('Password Copied to Clipboard') def opendatafile(self): self.filepath.delete(0, tk.END) fabspath = fd.askopenfilename(title='Please choose Data File') if fabspath != '': self._readfile(fabspath) self.filepath.insert(tk.END, fabspath) self.keyentry.focus_set() def newfile(self): self.filepath.delete(0, tk.END) f = fd.asksaveasfile('wb') self.filepath.insert(tk.END, f.name) fabspath = self.filepath.get() self._readfile(fabspath) self.keyentry.focus_set() def _readfile(self, fabspath): self.mylist.delete(0, tk.END) f = open(fabspath, 'rb') c = f.read() f.close() self.mylist.insert(tk.END, *c.splitlines()) #filecontent.set(c) def enc(self): fabspath = self.filepath.get() if fabspath != '': key = self.keyentry.get() self.statuslabel.set('Encrypting File') self.status.config(background='red') encryptfile(key, fabspath, fabspath) self.statuslabel.set('Encrypted!') self.status.config(background='green') self._readfile(fabspath) #self.filepath.delete(0, tk.END) def dec(self): key = self.keyentry.get() fabspath = self.filepath.get() self.statuslabel.set('Decrypting File...') self.status.config(background='red') try: decryptfile(key, fabspath, fabspath) self.statuslabel.set('Decrypted!') self.status.config(background='green') self._readfile(fabspath) except: self.statuslabel.set('Wrong Key!') self.status.config(background='Red')
tk_tree_bill_items.tag_configure('oddrow', background='bisque') tk_scbar_bill_items.grid(row=0, column=1, sticky='ns') # Create entryBillTotal label and text box and place it within tk_frame_summary to display bill total tk_label_bill_tot = ttk.Label(tk_frame_summary, text=u"Bill Total:") tk_label_bill_tot.grid(column=1, row=1, sticky=tk.W) tk_entry_bill_tot = ttk.Entry(tk_frame_summary, textvariable=bind_bill_tot, font="Helvetica 11", width=14, justify="right") tk_entry_bill_tot.grid(column=2, row=1, sticky=tk.E) tk_entry_bill_tot.config(state='disabled') # Declare Event Handlers tk_tree_bill_items.bind('<<TreeviewSelect>>', event_treeListSelected) tk_root.bind('<Left>', lambda event, arg='Left': event_keyClick(event, arg)) tk_root.bind('<Right>', lambda event, arg='Right': event_keyClick(event, arg)) tk_root.bind('<Up>', lambda event, arg='Up': event_keyClick(event, arg)) tk_root.bind('<Down>', lambda event, arg='Down': event_keyClick(event, arg)) tk_root.bind('<Tab>', lambda event, arg='Tab': event_keyClick(event, arg)) tk_root.bind('<Delete>', lambda event, arg='Delete': event_keyClick(event, arg)) # Create Database connection db_conn = sqlite3.connect("POSLITE") db_cur = db_conn.cursor() # Call Main Loop tk_root.mainloop()
media_menu.add_command(label = 'Exit', image = exit_icon, compound = LEFT, accelerator = 'Ctrl + Q', command = exit_command) audio_menu.add_command(label = 'Increase Volume', image = increase_volume_icon, compound = LEFT, command = increase_volume) audio_menu.add_command(label = 'Decrease Volume', image = decrease_volume_icon, compound = LEFT, command = decrease_volume) audio_menu.add_command(label = 'Mute', image = mute_icon, compound = LEFT, command = mute) view_menu.add_checkbutton(label = 'Playlist', onvalue = True, offvalue = False, variable = playlist_var, image = playlist_icon, compound = LEFT, command = playlist) view_menu.add_separator() view_menu.add_checkbutton(label ='Status Bar', onvalue = True, offvalue = False, variable = status_bar_var, compound = LEFT, command = hide_status_bar) help_menu.add_command(label ='About Us', image = about_us_icon, compound = LEFT, command = aboutus_func) main_application.config(menu = main_menu) #----------------------------- End Menu Bar Code ----------------------------- def on_closing(): global stop_var stop_var = False stopmusic() main_application.destroy() main_application.protocol("WM_DELETE_WINDOW", on_closing) #Bind Shortcut keys main_application.bind("<Control-o>", browse_file) main_application.bind("<Control-Shift-o>", multiple_files) main_application.bind("<Control-f>", open_folder) main_application.bind("<Control-q>", exit_command) main_application.mainloop()
listFrame1 = Frame(mainFrame, bg='white') listFrame1.grid(row=5, column=1, columnspan=2, pady=5, padx=10, sticky='w') listFrame = Frame(listFrame1, bg='white') listFrame.pack() listbox1 = Listbox(listFrame, height=5, width=40) listbox1.pack(side=LEFT, fill='both') yScroll1 = ttk.Scrollbar(listFrame, orient='vertical', command=listbox1.yview) yScroll1.pack(side=RIGHT, fill='y') listbox1.configure(yscroll=yScroll1.set) xScroll1 = ttk.Scrollbar(listFrame1, orient='horizontal', command=listbox1.xview) xScroll1.pack(fill='x') listbox1.configure(xscroll=xScroll1.set) btnFrame = Frame(root, bg='white') btnFrame.pack(side=BOTTOM, padx=10, pady=25) btnSend = ttk.Button(btnFrame, text='Clear', command=clear) btnSend.grid(row=0, column=0, padx=10) btnSend = ttk.Button(btnFrame, text='Send', command=thread_send) btnSend.grid(row=0, column=1, padx=10) btnQuit = ttk.Button(btnFrame, text='Exit', command=root.destroy) btnQuit.grid(row=0, column=2, padx=10) root.bind('<Escape>', clear) root.mainloop()