gtk.StatusIcon()不接受给定的标题(Python)

gtk.StatusIcon()不接受给定的标题(Python),python,gtk,pygtk,Python,Gtk,Pygtk,我读过,但它的答案对我不起作用,所以这不是它的副本 这个问题发生在我的一个项目上,我基本上将GUI模块和主模块分开。从主模块开始,我初始化GUI,它应该依次生成状态图标,即设置图标和标题,但尽管我做出了努力,但其标签始终读取python脚本的名称 该项目的故障代码类似于以下代码: import gtk class Main: def __init__(self): self.statusicon = gtk.StatusIcon() self.stat

我读过,但它的答案对我不起作用,所以这不是它的副本

这个问题发生在我的一个项目上,我基本上将GUI模块和主模块分开。从主模块开始,我初始化GUI,它应该依次生成状态图标,即设置图标和标题,但尽管我做出了努力,但其标签始终读取python脚本的名称

该项目的故障代码类似于以下代码:

import gtk

class Main:

    def __init__(self):
        self.statusicon = gtk.StatusIcon()
        self.statusicon.set_from_icon_name('call-end-symbolic')
        self.statusicon.set_title('Title reads')

        self.cb = gtk.combo_box_new_text() # Faulty line

        gtk.main()

if __name__ == '__main__':
    instance = Main()
看似可笑的是,通过删除错误行,代码可以完美地工作,即设置了标题。但是,如果不删除该行,则不会设置标题,脚本名称仍保留为标题

我阅读了PyGTK文档,它说-我应该使用gtk.comboxText;但是,我在gtk模块中找不到gtk.ComboBoxText:


我想这个问题更需要一个bug报告而不是答案,但如果我错了,请纠正我。

请不要要求我们浏览您的代码。制作一个演示您的问题的最小程序并粘贴到此处。两年后,当其他人来寻找相同的答案时,您的代码可能已经发生了很大的变化,以至于无法识别。也就是说,说出另一个答案的哪些地方不起作用很重要。我看到您的GUI中有一个调试打印语句。\uuuu init\uuuuuuu,它打印什么?很公平-我认识到,对于一个长期使用的示例,使用动态源代码是不合适的。如果可以的话,我会在几个小时内提供一个测试用例。不过,debug print语句确实打印了标题。我认为作为一个解决方案,我将把我的小项目移植到GTK 3上,不管怎样,这在改进您的问题方面做得非常好!不幸的是,我不知道答案。我知道ComboBoxText是最近添加的,因此可能比您的PyGTK版本更新。请不要要求我们浏览您的代码。制作一个演示您的问题的最小程序并粘贴到此处。两年后,当其他人来寻找相同的答案时,您的代码可能已经发生了很大的变化,以至于无法识别。也就是说,说出另一个答案的哪些地方不起作用很重要。我看到您的GUI中有一个调试打印语句。\uuuu init\uuuuuuu,它打印什么?很公平-我认识到,对于一个长期使用的示例,使用动态源代码是不合适的。如果可以的话,我会在几个小时内提供一个测试用例。不过,debug print语句确实打印了标题。我认为作为一个解决方案,我将把我的小项目移植到GTK 3上,不管怎样,这在改进您的问题方面做得非常好!不幸的是,我不知道答案。我知道ComboBoxText是最近添加的,因此可能比您的PyGTK版本更新。
>>> dir(gtk.ComboBoxText)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'ComboBoxText'