我有一个使用 PyGTK 的 Python 应用程序。如果主窗口的标题是“Foo”,“Foo”将显示在 GNOME 的窗口列表中。由于当前配置了窗口列表,它将始终对来自同一应用程序的窗口进行分组。当我在主窗口顶部打开一个模态窗口时,窗口列表中的标题将更改为“foo.py”或任何 Python 脚本的名称。当窗口未分组时,两个窗口在列表中显示为“Foo”和“Bar”。
窗口分组时如何控制窗口列表中显示的内容?
分组窗口使用应用程序名称作为标签,AFAIK 默认为 argv[0]。这应该可以使用g_set_application_name
(glib.set_application_name
在 PyGTK 中) 进行修改。如果这不起作用,请尝试g_set_prgname
.
更新:旧版本的 PyGTK 在gobject
模块中有它们,所以试试看。不要忘记检查这两个函数,因为 set_application_name 是相当新的。
如果这仍然不起作用,最后的手段是使用 ctypes,例如
import ctypes
libglib = ctypes.CDLL('libglib-2.0.so')
libglib.g_set_application_name("Hello World")
如果这不起作用,那么您的 glib 可能太旧了;我不知道更多的解决方法。