Я пытаюсь реализовать раскрывающийся список в приложении Ubuntu, используя Glade (GTK+3) и Python. Я могу заставить ComboBoxText отображаться, заполненный строками. Однако, когда я закрываю окно, в котором оно содержится, а затем снова открываю его, выпадающего списка там нет, просто совершенно пустое окно.
Я добавил рассматриваемый виджет ComboBoxText в окно в Glade. Затем я добавил этот код в свою программу Python:
def on_button_edit_clicked(self, widget):
""" display list of events already stored, and allow deletion """
self.combo = self.builder.get_object('combo_box')
self.store = Gtk.ListStore(str)
self.store.append(['hello'])
self.store.append(['goodbye'])
self.combo.set_model(self.store)
event_editor = self.builder.get_object("event_editor")
event_editor.show()
Я даже пытался уничтожить виджет, чтобы посмотреть, поможет ли это:
def on_event_editor_destroy(self, widget):
self.combo.destroy()
self.store = Gtk.ListStore(str)
self.combo.set_model(self.store)
РЕДАКТИРОВАТЬ:
С тех пор я пробовал альтернативный код, который включал объект CellRendererText, но все равно не повезло.
Вот мои исходники: я создал Gtk.ListStore (), затем я создал файл Gtk. CellRendererText(), затем я создал Gtk.ComboBox (). Все это соответствовало примеру 13.3 здесь.
Ничего не работает. Когда я открываю окно со списком во второй раз, это просто пустое окно. Кто-нибудь может помочь, пожалуйста?
__init__
и показывать/скрывать по мере необходимости. - person ergosys   schedule 16.04.2013