我使用的是pygtk2.0。在我的程序中,我创建了一个包含组合框的对话框。对话框没有“确定”或“取消”按钮。当组合框中的项目被选中时,对话框必须关闭(意味着在onchange
事件中)。但如果没有手动关闭操作,我无法销毁对话框。在
我的相关代码是:
def mostrar_combobox(self, titulo, texto_etiqueta, lista):
"""
MÃ © All to show a combobox on screen and get the option chosen
"""
#print texto_etiqueta
#dialogo = gtk.Dialog(titulo, None, 0, (gtk.STOCK_OK, gtk.RESPONSE_OK, gtk.STOCK_CANCEL, gtk.RESPONSE_CANCEL))
dialogo = gtk.Dialog(titulo, None, gtk.DIALOG_MODAL, None)
etiqueta = gtk.Label(texto_etiqueta)
etiqueta.show()
dialogo.vbox.pack_start(etiqueta)
combobox = gtk.combo_box_new_text()
for x in lista:
combobox.append_text(x)
combobox.connect('changed', self.changed_cb)
#combobox.set_active(0)
combobox.show()
dialogo.vbox.pack_start(combobox, False)
response = dialogo.run()
elemento_activo = combobox.get_active()
return elemento_activo
dialogo.hide()
def changed_cb(self, combobox):
index = combobox.get_active()
if index > -1:
print index
请告知如何在onchange
之后关闭它。在
我在这里发布了一个示例代码:http://pastie.org/10748579
但我无法在我的主应用程序中复制相同的内容。在
下面是一个简单的例子,它可以满足您的需要。我用你的一些代码,我写了几年的代码,还有一些新的东西。在
在Python2.6.6、GTK版本2.21.3上测试
相关问题 更多 >
编程相关推荐