Ejemplo n.º 1
0
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()
Ejemplo n.º 2
0
    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()
Ejemplo n.º 3
0
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()
Ejemplo n.º 4
0
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()
Ejemplo n.º 5
0
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')
Ejemplo n.º 6
0
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()
Ejemplo n.º 8
0
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()