简体   繁体   中英

Tkinter cannot use geometry manager grid inside

Widgets works generally when running this when code below

Label(window, image=photo1, bg="black").grid(row=0, column=0, sticky=E)

Code gives me the error:

_tkinter.TclError: cannot use geometry manager grid inside . which already has slaves managed by pack

I understand that this error is about using both .pack and .grid but it works without this line, which also utilises .pack and .grid together

def widgets(self):
        self.head = Label(self.master,text=" Welcome to Luxury Cruises ", font=('freesansbold', 25),pady=40)
        self.head.pack()

        self.logf = Frame(self.master, padx=10, pady=10)
        Label(self.logf, text="Username: ", font=('freesansbold', 20), padx=5, pady=10).grid(sticky=W)
        Entry(self.logf, textvariable=self.username, bd=8, font=('calibri', 15, 'bold')).grid(row=0, column=1, sticky=E)
        Label(self.logf, text="Password: ", font=('freesansbold', 20), padx=5, pady=10).grid(row=1, column=0, sticky=W)
        Entry(self.logf, textvariable=self.password, bd=8, font=('calibri', 15, 'bold'), show="*").grid(row=1, column=1,
                                                                                               sticky=E)
        Button(self.logf, text=" Login ", bd=7, font=("monaco", 15, 'bold'), padx=5, pady=5, command=self.login).grid(
            row=2)
        Button(self.logf, text=" Make Account ", bd=7, font=("monaco", 15, 'bold'), padx=5, pady=5,
               command=self.cr).grid(row=2, column=1)
        self.logf.pack()

When you are using the .pack() function, you cannot use the .grid() function.

check out When to use pack or grid layouts in tkinter?

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