简体   繁体   中英

How do I add things with button in tkinter?

So, what i wanna do is that when i click the button, a new thing to be added to my project.

I have few tabs, and on the second one (WorkExp) I got Company and job description labels, and i want that whenever i click the button it to add new same labels.

it works, the button, but the thing is add the placement on these new labels is the same as old ones.

I tried while and for cycle but i couldnt make any of them work.

What I have tried:

WorkExp = ttk.Frame(Tabs)
Tabs.add(WorkExp, text = "Work Experience")

######################
def AddExp():
Label(WorkExp, text = "Company/Place", padx = 5, pady = 5).grid(row = 3, column = 1)
Label(WorkExp, text="Job Description", padx=5, pady=5).grid(row = 4 , column=1)
Comp2 = Entry(WorkExp).grid(row=3, column=2)
Work2 = Entry(WorkExp).grid(row=4, column=2)

######################
Label(WorkExp, text = "Company/Place", padx = 5, pady = 5).grid(row = 1, column = 1)
Label(WorkExp, text = "Job Description", padx = 5, pady = 5).grid(row = 2, column = 1)

Comp1 = Entry(WorkExp).grid(row = 1, column = 2)
Work1 = Entry(WorkExp).grid(row = 2, column = 2)

Button(WorkExp, text = "Add Experience", command = AddExp).grid(row = 10, column = 1)
import Tkinter as tk

# Now Start From Here
class App(object):
    def new_row(self):
        # Create widgets -----
        new_entry = tk.Entry(root, width=7)

        # Put widgets in grid----------
        self.num_rows += 1
        new_entry.grid(column=0, row=self.num_rows, sticky='WE')

    def __init__(self):
        self.num_rows = 1
        createRow_button = tk.Button(
            root, text='New Row', command=self.new_row)
        createRow_button.grid()

root = tk.Tk()
app = App()
root.mainloop()

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM