Python tkSimpleDialog 全屏和全屏父级焦点

Python tkSimpleDialog Fullscreen and Focus Over Fullscreen Parent

我在让 tkSimpleDialog 关注我的全屏 window GUI 时遇到了问题。我有一个 GUI,我正在尝试使用对话框 window 作为管理员密码使用 root.quit() 关闭 GUI(如信息亭模式应用程序)。这样做的问题是,如果父级 windows 是全屏的,对话框不会出现在父级 windows 的前面。此外,我还想让 tkSimpleDialog 也全屏显示。

这是在我的程序中使用 tkSimpleDialog.py 来 called/created 对话框的代码:

    def check_admin_password():
    # use askstring here to verify password.
    pass_attempt = simpledialog.askstring("Verifying access","Please enter Admin password", parent=window, show="*")
    if pass_attempt == "password":
        root.quit() # used whatever your instance of Tk() is here in place of root.

admin_minimize_button = Button(window, text = "Administrator", command = check_admin_password, width=35, height=12)
admin_minimize_button.grid(row=4, column=0)

我正在为父级使用以下代码 window,我相信 overrideredirect(True) 有一些东西影响了我的对话框的焦点 window:

qwindow = Toplevel(root)                                            #renames Toplevel "popup" window frame to variable "qwindow"
qwindow.title('Mission Queue')                                      #creates title on popup window
w, h = qwindow.winfo_screenwidth(), qwindow.winfo_screenheight()    #aquires dimensions from display size
qwindow.geometry("%dx%d+0+0" % (w, h))                              #sets window size to aquired dimensions
qwindow.overrideredirect(True)                                      #removes top bar and exit button from parent window frame

我已经尝试编辑 tkSimpleDialog.py 文件并添加 overrideredirect(True) 行,但是这不起作用。如果需要更多信息,请告诉我。任何建议将不胜感激。提前致谢。

由于我无法使用 tkSimpleDialog 找出解决方案,我尝试了一种不同的方法来创建我自己的 "dialog"。不幸的是,在屏幕 window 设置为 wm_attributes('-fullscreen', 'True')overrideredirect(True) 的情况下,我仍然无法获得让输入行聚焦的对话框。虽然两者都工作会更好;出于我的目的,在没有 overrideredirect(True) 的情况下在我的应用程序中全屏显示会很好。对于有类似问题或想查看有关我的进展的更多文档的任何人,请在 link 到我的其他论坛 post:()。 感谢您的帮助!