python - 如何在Python的Tkinter模块中使对话框窗口出现在最前面?

Posted

技术标签:

【中文标题】python - 如何在Python的Tkinter模块中使对话框窗口出现在最前面?【英文标题】:How to bring dialogue box window to appear at the front in Tkinter module of Python? 【发布时间】:2020-11-22 13:09:35 【问题描述】:

我正在使用 Python 2.7 Tkinter 模块来创建 GUI。在这个 GUI 中有两个窗口:

    要求用户输入内容的对话框。 用户输入值后加载的主用户界面。

我面临的问题是第二个窗口出现在第一个窗口之前,因此第二个窗口覆盖了整个第一个窗口,所以我实际上必须拖出第二个窗口才能在第一个窗口中输入值,这样第二个窗口加载。如何确保第一个窗口(即对话框)始终出现在前面。

这是对话框窗口的代码。

top = TK()
value += tkSimpleDialog.askstring("Fruit", "Enter fruit number: e.g 3", parent=top)

【问题讨论】:

我喜欢这个问题,但你真的需要它的机制吗?你为什么不建立一个TopLevel呢?我就不用多解释了。 :D 你也可以看看这个effbot.org/tkinterbook/tkinter-dialog-windows.htm 以下是一些没有机制的简单示例:***.com/a/45172395/13629335***.com/a/29498445/13629335 尝试在askstring(...) 之前添加top.update()。注意top = TK() 应该是top = Tk() 【参考方案1】:

使用top.lift()这将使您的窗口位于前面。

【讨论】:

以上是关于python - 如何在Python的Tkinter模块中使对话框窗口出现在最前面?的主要内容,如果未能解决你的问题,请参考以下文章

python怎么用tkinter

Python的常用库

pythy标准库之Tkinter(hello world窗口显示)

为啥 tkinter 不能很好地处理多处理?

如何在 tkinter 窗口中打开 cv2 窗口

如何在CentOS 8上安装Python2 Python3