2

我已经阅读了这个问题,但它的答案对我不起作用,所以这不是它的重复。

这个问题发生在我的一个项目上,我基本上已经将 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 方法已被弃用- 我应该gtk.ComboBoxText()改用它;gtk.ComboBoxText但是,我在我的gtk模块中找不到:

>>> dir(gtk.ComboBoxText)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'ComboBoxText'

我想这个问题比答案更需要错误报告,但如果我错了,请纠正我。

4

0 回答 0