def __init__(self, window): # conect to the backend self.bk = backend.Back() # here we will add all the front end widgets (names, buttons, etc) self.w = window self.w.title("Movie Database App") self.w.geometry("1000x600") self.font = ("Arial", 14) self.font2 = ("Arial", 10) self.last_selected = 0 # lets add the widgets self.title_info = tk.Label(master=self.w, text="Title", width=15, font=self.font, anchor=tk.W) self.title_info.grid(row=0, column=0, pady=(30, 0), padx=(30, 0)) self.title_text = tk.StringVar( ) # this is just to hold the editable text self.title = tk.Entry(master=self.w, font=self.font, textvariable=self.title_text) self.title.grid(row=0, column=1, padx=30, pady=(30, 0)) self.year_info = tk.Label(master=self.w, text="Year", width=15, font=self.font, anchor=tk.W) self.year_info.grid(row=0, column=2, pady=(30, 0)) self.year_text = tk.StringVar( ) # this is just to hold the editable text self.year = tk.Entry(master=self.w, font=self.font, textvariable=self.year_text) self.year.grid(row=0, column=3, pady=(30, 0)) self.director_info = tk.Label(master=self.w, text="Director", width=15, font=self.font, anchor=tk.W) self.director_info.grid(row=1, column=0, padx=(30, 0)) self.director_text = tk.StringVar( ) # this is just to hold the editable text self.director = tk.Entry(master=self.w, font=self.font, textvariable=self.director_text) self.director.grid(row=1, column=1, padx=30) self.lead_info = tk.Label(master=self.w, text="Actress/Actor", width=15, font=self.font, anchor=tk.W) self.lead_info.grid(row=1, column=2) self.lead_text = tk.StringVar( ) # this is just to hold the editable text self.lead = tk.Entry(master=self.w, font=self.font, textvariable=self.lead_text) self.lead.grid(row=1, column=3) # lets create the main display - the widget is called a listbox self.display = tk.Listbox(master=self.w, height=10, width=70, font=self.font2) self.display.grid(row=2, column=0, columnspan=2, rowspan=10, pady=50, padx=(30, 0)) self.display.bind("<<ListboxSelect>>", self.select_row) # add a scrollbar self.scroll = tk.Scrollbar(master=self.w) self.scroll.grid(row=2, column=2, sticky="nsw", rowspan=10, pady=50) #link the scroll to the ListBox: self.scroll.configure(command=self.display.yview) #button time! self.show = tk.Button(master=self.w, font=self.font, text="Show All", width=10, command=self.show_all_database) self.show.grid(row=2, column=3, pady=(50, 0)) self.add = tk.Button(master=self.w, font=self.font, text="Add", width=10, command=self.add_entry) self.add.grid(row=3, column=3, pady=(0, 0)) self.delete = tk.Button(master=self.w, font=self.font, text="Delete", width=10, command=self.delete_entry) self.delete.grid(row=4, column=3) self.update = tk.Button(master=self.w, font=self.font, text="Update", width=10, command=self.update_entry) self.update.grid(row=5, column=3) self.search = tk.Button(master=self.w, font=self.font, text="Search", width=10, command=self.search_entry) self.search.grid(row=6, column=3) self.play = tk.Button(master=self.w, font=self.font, text="Trailer", width=10, command=self.play_trailer) self.play.grid(row=7, column=3) self.exit = tk.Button(master=self.w, font=self.font, text="Exit", width=10, command=sys.exit) self.exit.grid(row=8, column=3) # display the database self.show_all_database()
def __init__(self, window): self.window = window #store the window in the object in order to be able to work with this window in other methods self.window.title("This is a fancy database project.") self.myfont = ( "Times New Roman", 18 ) #as we are going to use the same font, we can create a font object. self.yourfont = ("Curier", 14) #need to create a backend instance here self.bk = backend.Back() #now lets create the widgets #labels: a label is not selectable self.lb1 = Label(master=self.window, text="Title", font=self.myfont) self.lb1.grid(row=0, column=0, sticky="w", pady=5) self.lb1 = Label(master=self.window, text=" Year", font=self.myfont) self.lb1.grid(row=0, column=2, sticky="w", pady=5) self.lb1 = Label(master=self.window, text="Director", font=self.myfont) self.lb1.grid(row=1, column=0, sticky="w", pady=5) self.lb1 = Label(master=self.window, text=" Actress / Actor", font=self.myfont) self.lb1.grid(row=1, column=2, sticky="w", pady=5) #entrytext: a text in which you can put nformation self.text_title = StringVar self.et1 = Entry(master=self.window, textvariable=self.text_title, font=self.myfont) self.et1.grid(row=0, column=1, sticky="w") self.text_year = StringVar self.et2 = Entry(master=self.window, textvariable=self.text_year, font=self.myfont) self.et2.grid(row=0, column=3, sticky="w") self.text_dir = StringVar self.et3 = Entry(master=self.window, textvariable=self.text_dir, font=self.myfont) self.et3.grid(row=1, column=1, sticky="w") self.text_lead = StringVar self.et4 = Entry(master=self.window, textvariable=self.text_lead, font=self.myfont) self.et4.grid(row=1, column=3, sticky="w") #main screen self.listbox = Listbox( master=self.window, font=self.yourfont, height=10, width=80) #height: 10 lines of text inside of it self.listbox.grid(row=2, column=0, rowspan=8, columnspan=2, padx=20, pady=40) # need to bind an action for clicking in the listbox self.listbox.bind( "<<ListboxSelect>>", func=self.get_row ) #self.getrow is a function that needs to be created. self.scroll = Scrollbar(master=self.window) self.scroll.grid(row=2, column=2, rowspan=8, sticky="nsw", pady=40) #link it to the listbox: it is not yet scrolling into the listbox self.scroll.configure(command=self.listbox.yview) #yuscroll? #the buttons self.bt1 = Button(master=self.window, width=10, text="View All", font=self.myfont, command=self.view) self.bt1.grid(row=2, column=3) self.bt2 = Button(master=self.window, width=10, text="Delete", font=self.myfont, command=self.delete) self.bt2.grid(row=3, column=3) self.bt3 = Button(master=self.window, width=10, text="Add", font=self.myfont, command=self.add) self.bt3.grid(row=4, column=3) self.bt4 = Button(master=self.window, width=10, text="Search", font=self.myfont, command=self.view) self.bt4.grid(row=5, column=3) self.bt5 = Button(master=self.window, width=10, text="Update", font=self.myfont, command=self.update()) self.bt5.grid(row=6, column=3) self.bt6 = Button(master=self.window, width=10, text="Close", font=self.myfont, command=self.close) self.bt6.grid(row=7, column=3)
def __init__(self, window): self.window = window self.window.title("This is a fancy database project!") self.myfont = ("Helvetica", 19) self.yourfont = ("Broadway", 19) # need to create a backend instance here self.bk = backend.Back() # let's create the widgets self.lbl1 = Label(master=self.window, text="Title", font=self.myfont) self.lbl1.grid(row=0, column=0, sticky="w") self.lbl2 = Label(master=self.window, text=" Year", font=self.myfont) self.lbl2.grid(row=0, column=2, sticky="w") self.lbl3 = Label(master=self.window, text="Director", font=self.myfont) self.lbl3.grid(row=1, column=0, sticky="w") self.lbl4 = Label(master=self.window, text=" Actress/Actor", font=self.myfont) self.lbl4.grid(row=1, column=2, sticky="w") # entryText self.text_title = StringVar() self.et1 = Entry(master=self.window, textvariable=self.text_title, font=self.myfont) self.et1.grid(row=0, column=1) self.text_director = StringVar() self.et2 = Entry(master=self.window, textvariable=self.text_director, font=self.myfont) self.et2.grid(row=1, column=1) self.text_year = StringVar() self.et3 = Entry(master=self.window, textvariable=self.text_year, font=self.myfont) self.et3.grid(row=0, column=3) self.text_actor = StringVar() self.et4 = Entry(master=self.window, textvariable=self.text_actor, font=self.myfont) self.et4.grid(row=1, column=3) # main screen self.listbox = Listbox(master=self.window, font=self.yourfont, height=10, width=80) self.listbox.grid(row=2, column=0, rowspan=8, columnspan=2, padx=20, pady=20) # need to bind an action for clicking in the listbox self.listbox.bind("<<ListboxSelect>>", func=self.get_row) self.scroll = Scrollbar(master=self.window) self.scroll.grid(row=2, column=2, rowspan=8, sticky="nsw", pady=40) # link it to the listbox self.scroll.configure(command=self.listbox.yview()) # yview_scroll()? # the buttons self.bt1 = Button(master=self.window, text="Delete", width=10, font=self.myfont, command=self.delete) self.bt1.grid(row=2, column=3, pady=5) self.bt2 = Button(master=self.window, text="Add", width=10, font=self.myfont, command=self.add) self.bt2.grid(row=3, column=3, pady=5) self.bt3 = Button(master=self.window, text="Search", width=10, font=self.myfont, command=self.view) self.bt3.grid(row=4, column=3, pady=5) self.bt4 = Button(master=self.window, text="Update", width=10, font=self.myfont, command=self.update) self.bt4.grid(row=5, column=3, pady=5) self.bt5 = Button(master=self.window, text="View All", width=10, font=self.myfont, command=self.view) self.bt5.grid(row=6, column=3, pady=5) self.bt6 = Button(master=self.window, text="Close", width=10, font=self.myfont, command=self.close) self.bt6.grid(row=7, column=3, pady=5)
def __init__(self, window): self.window = window self.window.title("This is a fancy database project") self.myfont = ("Times New Roman", 18) self.yourfont = ("Courier", 14) self.kept_index = 0 # need to create a backend instance here self.bk = backend.Back() # let's create the widgets # labels self.lb1 = Label(master=self.window, text="Title", font=self.myfont) self.lb1.grid(row=0, column=0, sticky="w", pady=5) self.lb2 = Label(master=self.window, text=" Year", font=self.myfont) self.lb2.grid(row=0, column=2, sticky="w", pady=5) self.lb3 = Label(master=self.window, text="Director", font=self.myfont) self.lb3.grid(row=1, column=0, sticky="w", pady=5) self.lb4 = Label(master=self.window, text=" Actress/Actor", font=self.myfont) self.lb4.grid(row=1, column=2, sticky="w", pady=5) # entrytext self.text_title = StringVar() self.et1 = Entry(master=self.window, textvariable=self.text_title, font=self.myfont) self.et1.grid(row=0, column=1, pady=5) self.text_year = StringVar() self.et2 = Entry(master=self.window, textvariable=self.text_year, font=self.myfont) self.et2.grid(row=0, column=3, pady=5) self.text_dir = StringVar() self.et3 = Entry(master=self.window, textvariable=self.text_dir, font=self.myfont) self.et3.grid(row=1, column=1, pady=5) self.text_lead = StringVar() self.et4 = Entry(master=self.window, textvariable=self.text_lead, font=self.myfont) self.et4.grid(row=1, column=3, pady=5) # main screen self.listbox = Listbox(master=self.window, font=self.yourfont, height=10, width=80) self.listbox.grid(row=2, column=0, rowspan=8, columnspan=2, padx=20, pady=40) # need to bind an action for clicking in the listbox self.listbox.bind("<<ListboxSelect>>", func=self.get_row) self.scroll = Scrollbar(master=self.window) self.scroll.grid(row=2, column=2, rowspan=8, sticky="nsw", pady=40) #link it to the listbox self.scroll.configure(command=self.listbox.yview) #yuscroll? # the buttons self.bt1 = Button(master=self.window, fg="red", width=10, text="View All", font=self.myfont, command=self.view) self.bt1.grid(row=2, column=3) self.bt2 = Button(master=self.window, fg="purple", width=10, text="Delete", font=self.myfont, command=self.delete) self.bt2.grid(row=3, column=3) self.bt3 = Button(master=self.window, width=10, text="Add", font=self.myfont, command=self.add) self.bt3.grid(row=4, column=3) self.bt4 = Button(master=self.window, width=10, text="Search", font=self.myfont, command=self.view) self.bt4.grid(row=5, column=3) self.bt5 = Button(master=self.window, width=10, text="Update", font=self.myfont, command=self.update) self.bt5.grid(row=6, column=3) self.bt6 = Button(master=self.window, width=10, text="Close", font=self.myfont, command=self.close) self.bt6.grid(row=7, column=3)
def __init__(self, window): self.window = window self.window.title("This is my Database project") self.myfont = ("Times New Roman", 18) self.yourfont = ("Times New Roman", 14) # need to create backend instance self.bk = backend.Back() # lets create widgets self.text_title = StringVar() self.lb1 = Label(master=self.window, text="Title", font=self.myfont) self.lb1.grid(row=0, column=0, sticky="w") self.text_year = StringVar() self.lb2 = Label(master=self.window, text="Year", font=self.myfont) self.lb2.grid(row=0, column=2, sticky="w") self.text_director = StringVar() self.lb3 = Label(master=self.window, text="Director", font=self.myfont) self.lb3.grid(row=1, column=0, sticky="w") self.text_lead = StringVar() self.lb4 = Label(master=self.window, text="Actor/Actress", font=self.myfont) self.lb4.grid(row=1, column=2, sticky="w") #entry text self.text_title = StringVar() self.et1 = Entry(master=self.window, textvariable=self.text_title, font=self.myfont) self.et1.grid(row=0, column=1) self.text_year = StringVar() self.et2 = Entry(master=self.window, textvariable=self.text_year, font=self.myfont) self.et2.grid(row=0, column=3) self.text_director = StringVar() self.et3 = Entry(master=self.window, textvariable=self.text_director, font=self.myfont) self.et3.grid(row=1, column=1) self.text_lead = StringVar() self.et4 = Entry(master=self.window, textvariable=self.text_lead, font=self.myfont) self.et4.grid(row=1, column=3) #main screen, list box is a bigger entry box self.listbox = Listbox(master=self.window, font=self.yourfont, height=10, width=80) self.listbox.grid(row=2, column=0, rowspan=8, columnspan=2, padx=20, pady=40) # need to bind action for clicking in listbox self.listbox.bind("<<ListboxSelect>>", action=self.get_row) self.scroll = Scrollbar(master=self.window) self.scroll.grid(row=2, column=2, rowspan=8, columnspan=1, sticky="nsw", pady=40) self.scroll.configure(command=self.listbox.yview) # the buttons self.bt1 = Button(master=self.window, width=10, text="View All", font=self.myfont, command=self.view) self.bt1.grid(row=2, column=3) self.bt2 = Button(master=self.window, width=10, text="Delete", font=self.myfont, command=self.view) self.bt2.grid(row=3, column=3) self.bt3 = Button(master=self.window, width=10, text="Add", font=self.myfont, command=self.view) self.bt3.grid(row=4, column=3) self.bt4 = Button(master=self.window, width=10, text="Search", font=self.myfont, command=self.view) self.bt4.grid(row=5, column=3) self.bt5 = Button(master=self.window, width=10, text="Update", font=self.myfont, command=self.update) self.bt5.grid(row=6, column=3) self.bt6 = Button(master=self.window, width=10, text="Close", font=self.myfont, command=self.close) self.bt6.grid(row=7, column=3)
def __init__(self, window): self.emails = [] self.window = window self.window.minsize(1100, 800) self.window.title("BIS community") # paths path = "ski.png" path_p = "prado.png" path_t = "techie.png" path_b = "bis.png" # frames self.frame = Frame(master=window, bg="white") self.frame.grid(row=1, column=0, columnspan=8) self.title = Frame(master=window, bg="white") self.title.grid(row=0, column=0, columnspan=8) self.form = Frame(master=window, bg="white") self.form.grid(row=4, column=0, columnspan=8) # fonts self.font1 = l_font self.font2 = m_font self.font3 = s_font # title self.canvas0 = Canvas(master=self.title, width=215, height=111, bg="black") self.canvas0.img = ImageTk.PhotoImage(Image.open(path_b)) self.canvas0.create_image(10, 9, image=self.canvas0.img, anchor="nw") self.canvas0.grid(row=0, column=1, pady=20) # ski self.canvas = Canvas(master=self.frame, width=400, height=200, bg="green") self.canvas.img = ImageTk.PhotoImage(Image.open(path)) self.canvas.create_image(0, 0, image=self.canvas.img, anchor="nw") self.canvas.grid(row=1, column=1, padx=30) # prado self.canvas = Canvas(master=self.frame, width=280, height=200, bg="green") self.canvas.img = ImageTk.PhotoImage(Image.open(path_p)) self.canvas.create_image(-25, 0, image=self.canvas.img, anchor="nw") self.canvas.grid(row=1, column=0, padx=30) # techie self.canvas = Canvas(master=self.frame, width=280, height=200, bg="green") self.canvas.img = ImageTk.PhotoImage(Image.open(path_t)) self.canvas.create_image(0, 0, image=self.canvas.img, anchor="nw") self.canvas.grid(row=1, column=2, padx=30) # Line self.canvas2 = Canvas(master=self.form, width=450, height=20, bg="black") self.canvas2.create_text( 35, 7, text="Do not miss this opportunity and register below!!!", font=self.font2, anchor="nw", fill="white") self.canvas2.grid(row=4, column=2, pady=30) # create the backend instance self.bk = backend.Back() # labels ''' self.lb1 = Label(master=self.window, text="2019 ACTIVITIES", font=self.font1) self.lb1.grid(row=0, column=0, columnspan=7, pady=20) ''' self.lb2 = Label(master=self.window, text=" PRADO VISIT", font=self.font1, cursor="hand2") self.lb2.grid(row=2, column=1, sticky="e", pady=20) self.lb2.bind( "<Button-1>", lambda e: self.callback( "https://museodelprado.museumsmadrid.org/en")) self.lb3 = Label(master=self.window, text=" SKI TRIP", font=self.font1) self.lb3.grid(row=2, column=3, sticky="e", pady=20) self.lb4 = Label(master=self.window, text="TECH IE", font=self.font1, cursor="hand2") self.lb4.grid(row=2, column=6, sticky="ew", pady=20) self.lb4.bind("<Button-1>", lambda e: self.callback("http://techieconf.com/")) # description self.t_prado = Label(master=self.window, text="-Price: 15€", font=self.font3) self.t_prado.grid(row=3, column=1, sticky="ew") self.t_prado = Label(master=self.window, text="- Price: 300€", font=self.font3) self.t_prado.grid(row=3, column=3, sticky="e") self.t_tech = Label(master=self.window, text="- Price: 30€", font=self.font3) self.t_tech.grid(row=3, column=6, pady=1, padx=5, sticky="ew") # entry text and labels self.lb_name = Label(master=self.window, text="Name", font=self.font2) self.lb_name.grid(row=5, column=1, sticky="e", pady=20) self.text_name = StringVar() self.et1 = Entry(master=self.window, textvariable=self.text_name, font=self.font3) self.et1.grid(row=5, column=2, sticky="w", pady=20) self.lb_lastN = Label(master=self.window, text="Last name", font=self.font2) self.lb_lastN.grid(row=5, column=3, sticky="e", pady=20) self.text_lastN = StringVar() self.et2 = Entry(master=self.window, textvariable=self.text_lastN, font=self.font3) self.et2.grid(row=5, column=4, sticky="w", pady=20) self.lb_email = Label(master=self.window, text="Email", font=self.font2) self.lb_email.grid(row=5, column=5, sticky="e", pady=20) self.text_email = StringVar() self.et3 = Entry(master=self.window, textvariable=self.text_email, font=self.font3) self.et3.grid(row=5, column=6, sticky="w", pady=20) # submit self.bt1 = Button(master=self.window, width=14, text="REGISTER NOW!", font=self.font2, command=self.submit, cursor="hand2") self.bt1.grid(row=6, column=3, sticky="e", pady=20)
def __init__(self, w): # Connect with BackEnd self.bk = backend.Back() # Link window and add main characteristics self.w = w self.w.title("Movie Database App") self.w.geometry("825x510") self.font = ("Arial", 14) self.small_font = ("Arial", 10) self.last_selected = 0 # Create Input Boxes self.title_lb = tk.Label(master=self.w, text="Title", width=12, font=self.font, anchor="w") self.title_lb.grid(row=0, column=0, padx=(20, 0), pady=(30, 30)) self.title_text = tk.StringVar() self.title = tk.Entry(master=self.w, font=self.font, textvariable=self.title_text) self.title.grid(row=0, column=1, padx=20, pady=(30, 30)) self.year_lb = tk.Label(master=self.w, text="Year", width=12, font=self.font, anchor="w") self.year_lb.grid(row=0, column=2, pady=(30, 30)) self.year_text = tk.StringVar() self.year = tk.Entry(master=self.w, font=self.font, textvariable=self.year_text) self.year.grid(row=0, column=3, pady=(30, 30)) self.director_lb = tk.Label(master=self.w, text="Director", width=12, font=self.font, anchor="w") self.director_lb.grid(row=1, column=0, padx=(20, 0)) self.director_text = tk.StringVar() self.director = tk.Entry(master=self.w, font=self.font, textvariable=self.director_text) self.director.grid(row=1, column=1, padx=20) self.lead_lb = tk.Label(master=self.w, text="Actor/Actress", width=12, font=self.font, anchor="w") self.lead_lb.grid(row=1, column=2) self.lead_text = tk.StringVar() self.lead = tk.Entry(master=self.w, font=self.font, textvariable=self.lead_text) self.lead.grid(row=1, column=3) # Create Main Display self.display = tk.Listbox(master=self.w, height=18, width=55, font=self.small_font) self.display.grid(row=2, column=0, rowspan=15, columnspan=2, padx=(25, 20), pady=50) self.display.bind("<<ListboxSelect>>", self.select_row) # Add a Scrollbar self.scroll = tk.Scrollbar(master=self.w) self.scroll.grid(row=2, column=1, sticky="nse", rowspan=15, padx=(25, 20), pady=50) # Link Scrollbar to Main Display self.scroll.config(command=self.display.yview) # Create Buttons self.show = tk.Button(master=self.w, font=self.font, text="Show All", width=10, command=self.show_all_databases) self.show.grid(row=2, column=3, pady=(50, 0)) self.add = tk.Button(master=self.w, font=self.font, text="Add", width=10, command=self.add_entry) self.add.grid(row=3, column=3) self.delete = tk.Button(master=self.w, font=self.font, text="Delete", width=10, command=self.delete_entry) self.delete.grid(row=4, column=3) self.update = tk.Button(master=self.w, font=self.font, text="Update", width=10, command=self.update_entry) self.update.grid(row=5, column=3) self.search = tk.Button(master=self.w, font=self.font, text="Search", width=10, command=self.search_entry) self.search.grid(row=6, column=3) self.play = tk.Button(master=self.w, font=self.font, text="Trailer", width=10, command=self.play_trailer) self.play.grid(row=7, column=3) self.exit = tk.Button(master=self.w, font=self.font, text="Exit", width=10, command=sys.exit) self.exit.grid(row=8, column=3) # Display DB self.show_all_databases()