Advertisement
Cobble5tone

Educational using optionmenus and listbox with tkinter

Oct 24th, 2019
592
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.67 KB | None | 0 0
  1. from tkinter import *
  2. """
  3. The containers below hold our data for the dates. The more advanced version would use a calendar module or some other
  4. means of ensuring data being put into the option menus is correct. For sake of example, I've just filled the lists with
  5. fake dates.
  6. """
  7. years = ['2019', '2020']
  8. months = ['Jan', 'Mar', 'Apr']
  9. days = ['1', '2', '3']
  10.  
  11. hours = [i for i in range(1, 13)]
  12. minutes = [i for i in range(1, 61)]
  13. ampm = ['AM', 'PM']
  14.  
  15.  
  16.  
  17. root = Tk()  # Our tkinter base
  18.  
  19. root.title("Date selector")
  20. root.geometry('300x500')
  21.  
  22. year_var = StringVar()  # Variables for our optionmenus
  23. month_var = StringVar()
  24. day_var = StringVar()
  25. hour_var = StringVar()
  26. minute_var = StringVar()
  27. am_pm_var = StringVar()
  28.  
  29.  
  30. year_optionmenu = OptionMenu(root, year_var, *years)  # Optionmenus for each variable
  31. month_optionmenu = OptionMenu(root, month_var, *months)
  32. day_optionmenu = OptionMenu(root, day_var, *days)
  33.  
  34. hour_optionmenu = OptionMenu(root, hour_var, *hours)
  35. minute_optionmenu = OptionMenu(root, minute_var, *minutes)
  36. am_pm_optionmenu = OptionMenu(root,  am_pm_var, *ampm)
  37.  
  38. button_select = Button(root, text='SELECT')  
  39.  
  40. my_list_box = Listbox(root)  # An example of a listbox and how data is added.
  41. example = ['This', 'is', 'a', 'list']
  42. for item in example:
  43.     my_list_box.insert(END, item)
  44.  
  45. year_optionmenu.grid(column=0, row=0)
  46. month_optionmenu.grid(column=1, row=0)
  47. day_optionmenu.grid(column=2, row=0)
  48.  
  49. hour_optionmenu.grid(column=3, row=0)
  50. minute_optionmenu.grid(column=4, row=0)
  51. am_pm_optionmenu.grid(column=5, row=0)
  52. button_select.grid(column=0, row=1, columnspan=5)
  53. my_list_box.grid(column=0, row=2, columnspan=5)
  54.  
  55.  
  56. root.mainloop()  # Mainloop
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement