def add_window(self):

        #Create New Window
        Frame = Toplevel()

        Frame.title('Another Window')

        Date_label = Label(Frame, text='Date:')
        Name_label = Label(Frame, text='Name:')
        Transaction_Label = Label(Frame, text='Transaction:')

        Description_Label = Label(Frame, text='Description:')

        Date_label.grid(column=0, row=0)
        Name_label.grid(column=0, row=1)
        Transaction_Label.grid(column=0, row=2)

        Description_Label.grid(column=0, row=3)

        self.Date_Entry = Entry(Frame)
        self.Name_Entry = Entry(Frame)
        self.Transaction_Entry = Entry(Frame)

        self.Description_Entry = Entry(Frame)

        self.Date_Entry.grid(column=1, row=0)
        self.Name_Entry.grid(column=1, row=1)
        self.Transaction_Entry.grid(column=1, row=2)

        self.Description_Entry.grid(column=1, row=3)

        Submit = Button(Frame, text='Submit', command=self.submit)
        Submit.grid(column=1, row=5, pady=20)

        self.r = tk.IntVar()

        RadioLayer = LabelFrame(Frame)
        RadioLayer.grid(column=0, row=6)

        Operation = [('Income', 1), ('Expense', -1)]

        for text, mode in Operation:  #Income or Expense color coding (Not yet included), also a way to prevent accident listing of whats income and expense
            Radiobutton(RadioLayer, text=text, variable=self.r,
                        value=mode).pack()

        self.Category = tk.StringVar()

        dropmenu = OptionMenu(
            Frame, self.Category, 'Income', 'Food', 'Utility',
            'Subscriptions')  #Allows to select which type of expense
        dropmenu.grid(column=1, row=6)

        Frame.geometry('250x250')
Example #2
0
def add_window():

    Frame = Toplevel()

    Frame.title('Another Window')

    Date_label = Label(Frame, text='Date:')
    Name_label = Label(Frame, text='Name:')
    Transaction_Label = Label(Frame, text='Transaction:')
    Category_Label = Label(Frame, text='Category:')
    Description_Label = Label(Frame, text='Description:')

    Date_label.grid(column=0, row=0)
    Name_label.grid(column=0, row=1)
    Transaction_Label.grid(column=0, row=2)
    Category_Label.grid(column=0, row=3)
    Description_Label.grid(column=0, row=4)

    Date_Entry = Entry(Frame)
    Name_Entry = Entry(Frame)
    Transaction_Label = Entry(Frame)
    Category_Label = Entry(Frame)
    Description_Label = Entry(Frame)

    Date_Entry.grid(column=1, row=0)
    Name_Entry.grid(column=1, row=1)
    Transaction_Label.grid(column=1, row=2)
    Category_Label.grid(column=1, row=3)
    Description_Label.grid(column=1, row=4)

    Submit = Button(Frame, text='Submit', command=submit)
    Submit.grid(column=1, row=5, pady=20)

    r = tk.IntVar()

    RadioLayer = LabelFrame(Frame)
    RadioLayer.grid(column=0, row=6)

    Operation = [('Income', 1), ('Expense', -1)]

    for text, mode in Operation:
        Radiobutton(RadioLayer, text=text, variable=r, value=mode).pack()

    Frame.geometry('250x250')
Example #3
0
    def __init__(self, poetry_root: tk.Frame) -> None:
        """Initialize the Poetry App along with its gadgets"""

        # Read the dictionary and poetry forms files
        self.word_pronunciations = poetry_reader.read_pronouncing_dictionary(
            open(DICTIONARY_FILENAME, 'r', encoding="utf-8"))
        self.poetry_patterns = poetry_reader.read_poetry_form_descriptions(
            open(POETRY_FORMS_FILENAME, 'r', encoding="utf-8"))

        # Build the user interface
        poetry_root.title("Pure Poetry")
        screen_width = poetry_root.winfo_screenwidth()
        screen_height = poetry_root.winfo_screenheight()
        width, height = screen_width * 0.5, screen_height * 0.5
        self.width, self.height = width, height

        # calculate x and y coordinates for the Tk root window
        x = (screen_width / 2) - (width / 2)
        y = (screen_height / 2) - (height / 2)
        self.annotation_height = int(self.height / 50)

        # set the dimensions of the screen and where it is placed
        poetry_root.geometry('%dx%d+%d+%d' % (width, height, x, y))
        self.master = poetry_root

        tk.Frame.__init__(self, poetry_root)
        self.scroll_frame = ScrollFrame(self)
        self.scroll_frame.width = width
        self.scroll_frame.height = height

        self.create_screen_components()

        # pack scrollFrame itself
        self.scroll_frame.pack(side="top",
                               fill="both",
                               expand=True,
                               padx=(5, 0),
                               pady=(5, 0))