如何在OS栏中更改tkinter默认标题?

时间:2019-05-09 18:28:15

标签: python python-3.x tkinter

我正在使用Tkinter编写python应用程序,但是我找不到在操作系统顶部栏中(Gnome顶部栏和底座)更改默认标题Tk的方法。 我可以设置主窗口标题,但是它不会更改其顶部Tk所在的顶部栏中的字符串。老实说我很惊讶我找不到有人问同样的问题。

我正在使用Python 3.6在Ubuntu 18.04上进行开发

这是一个复制问题的示例代码:

import tkinter as tk

if __name__ == "__main__":
    mainWindow = tk.Tk()
    mainWindow.title("TEST")
    mainWindow.geometry("1024x600")
    mainWindow.mainloop()

我希望在主窗口框架标题,OS顶部栏中和OS应用程序底座中读取字符串TEST,但是我只能在Windows框架标题中读取它。其余显示Tk

2 个答案:

答案 0 :(得分:1)

使用className

mainWindow = tk.Tk(className='Ghanshyam')

根据 tkinter 上的 python Docs

<块引用>

Tk 类是在没有参数的情况下实例化的。这将创建 Tk 的顶级小部件,它通常是应用程序的主窗口。每个实例都有自己关联的 Tcl 解释器。

答案 1 :(得分:0)

Ubuntu中的顶部栏标题不是由运行的应用程序设置的,而是由应用程序的桌面条目设置的。我不确定为什么没有桌面条目时它会像以前那样工作,但是您可以创建一个像这样的文件,然后将其导入Ubuntu以使其正常工作。

[Desktop Entry]
Type=Application
Terminal=false
Icon=/path/to/icon/icon.png
Name=TITLE (this is what handles the top bar title)
Exec=/path/to/file/executable
Categories=Utility;

请参阅AskUbuntu上的this question