在我的小PyGObject/GTK3应用程序中,我尝试创建一个包含RadioMenuItem
s的(子)菜单
我在主窗口的__init__
中创建菜单,如下所示:
menu_item = None
self.menu = Gtk.Menu()
self.menu_items = {}
for i in range(1,5):
menu_item = Gtk.RadioMenuItem(menu_item)
menu_item.set_label(str(i))
self.menu_items[i] = menu_item
self.menu.append(self.menu_items[i])
self.menu_items[i].connect("activate",
self.on_menu_select,
i)
self.menu_items[i].show()
然后在button_press_event
处理程序中使用
当我第一次打开菜单时,菜单项“2”正确地被选中。 例如,当我选择菜单项“3”并再次打开菜单时,菜单项2和3都被选中。我做错什么了?在
您必须将单选菜单项彼此放在一个组中,否则当选择另一个选项时,它们将不知道如何取消选择:
请注意,这一行选择第2项,您不必亲自执行,因此您的按钮按下处理程序可以是:
^{pr2}$相关问题 更多 >
编程相关推荐