TheLovelySausage
TheLovelySausage

Reputation: 4124

Python Tkinter Toplevel not the active window

I have a Python Program that opens a Toplevel window which is working I just wanted to know if there is an option to set the Toplevel window window to be active once it has been opened because at the moment it is still showing the parent window as the active window after opening it.

The python code (Python 3.4.1)

from tkinter import *

class cl_gui:

    def __init__(self, master):

        master.title("DataBox")

        menu = Menu(master)
        master.config(menu=menu)

        menu_users = Menu(menu, tearoff=0)
        menu.add_cascade(label="Users", menu=menu_users)
        menu_users.add_command(label="View", command=self.f_openUsers)

    def f_openUsers(self):

        top = Toplevel()
        top.title("Users")

root = Tk()
app = cl_gui(root)

root.mainloop()

Upvotes: 0

Views: 1908

Answers (1)

jonrsharpe
jonrsharpe

Reputation: 122151

You can set focus onto the new Toplevel widget as follows:

def f_openUsers(self):
    top = Toplevel()
    top.title("Users")
    top.focus_set()  # <- add this line

See e.g. this handy tkinter guide.

Upvotes: 3

Related Questions