【发布时间】:2014-02-05 16:25:34
【问题描述】:
我在 wxPython 中设置了这个,但现在我正在为 GTK3/PyGObject 重写它,我有点迷失在这里。基本上,我的代码扫描目录,并将文件名添加到菜单项。我无法让它在 PyGObject 中工作。这是当前代码:
# Populate profiles menu
profileMenu = self.builder.get_object("profilesMenu")
profiles = os.listdir("/etc/netctl/")
# Iterate through profiles directory, and add to "Profiles" Menu #
for i in profiles:
if os.path.isfile("/etc/netctl/" + i):
profile = profileMenu.set_menu_item(i)
我尝试了各种 profileMenu.* 想法。我尝试的第一个是set_submenu,它返回以下错误:
[cody@cody-arch NetGUI]$ sudo python main.py
Traceback (most recent call last):
File "main.py", line 466, in <module>
netgui()
File "main.py", line 70, in __init__
self.InitUI()
File "main.py", line 140, in InitUI
profile = profileMenu.set_submenu(i)
TypeError: argument submenu: Expected Gtk.Widget, but got str
当前的只是说 set_menu_item 不存在,所以显然这行不通。我应该怎么做才能解决这个问题?我完全迷路了。我知道为什么 set_submenu 不起作用,我不知道如何解决它。如何将文件名设为 Gtk.Widget?
【问题讨论】:
标签: python-3.x gtk3 pygobject