【问题标题】:How To Hide Tkinter python Gui如何隐藏 Tkinter python Gui
【发布时间】:2014-05-10 23:45:36
【问题描述】:

任何人都知道如何隐藏 python GUI Tkinter, 我已经创建了键盘记录器,对于 GUI,我使用了 python 模块 Tkinter,我想添加名为 HIDE 的按钮,所以当用户单击它时它将隐藏 GUI,当用户按下 CTRL+E 之类的键时,它应该取消隐藏 GUI.... ?

【问题讨论】:

  • 当窗口被隐藏时,它不会收到任何键盘或鼠标事件。你知道吗?它只能记录在 tkinter 窗口中按下的键。

标签: python tkinter


【解决方案1】:

要隐藏默认的根窗口,您可以使用

root.withdraw()

为了让它再次可见,你可以使用

root.deiconify()

【讨论】:

  • 我尝试添加 root.withdraw() exitButtonPushed(),而不是 root.destroy() ,但它不起作用,请参见上面的代码
  • thx,我会尝试另一种方式,当用户单击 RUN 时我将运行 keylogger.py,当使用单击 HIDE 时它将退出 gui,但 keylogger.py 将继续运行
【解决方案2】:

Python 3:

from tkinter import Tk

root = Tk()
root.withdraw()

【讨论】:

    【解决方案3】:

    如果您想“隐藏”窗口(而不是破坏它)并将其带回,那么方法就是设置 Alpha 通道。

    要隐藏窗口,请将 alpha 通道设置为 0:

    master.attributes('-alpha', 0)
    

    将窗口集 alpha 恢复为 1.0:

    master.attributes('-alpha', 1.0)
    

    [编辑 - 原始答案的类型/范围不正确。范围是 0 到 1.0,是一个浮点数]

    【讨论】:

    • 并非所有系统都支持;在不支持的地方,Tkinter 总是使用 1.0alpha
    • 感谢您的评论。是的,我最初搞砸了这个答案。
    【解决方案4】:

    为了摆脱 GUI 窗口,我在代码中使用了以下内容。

    window.destroy()

    以及以下再次提出来。

    函数名称() window.lift()

    【讨论】:

    • window.destroy 什么都不做。如果你想调用destroy方法,你必须包含括号:window.destroy()。如果你在根窗口调用它,程序将退出。
    猜你喜欢
    • 1970-01-01
    • 2023-03-09
    • 1970-01-01
    • 1970-01-01
    • 2016-02-03
    • 2016-01-02
    • 2021-07-08
    • 2019-09-10
    • 1970-01-01
    相关资源
    最近更新 更多