Wie kann ich innerhalb eines gtk.ComboBoxEntry eine Scrollbar setzen?
-
22-08-2019 - |
Frage
Ich habe eine Combobox mit über hundert Einträge und es ist sehr umständlich mit einem Scrollbar zu überfliegen.
alt text http://img211.imageshack.us/img211/6972/screenshotprubapy .png
Ich will genau das tun, was im Bild ist. Mit der Bildlaufleiste auf der rechten Seite, so würde es einfacher sein, durch die Einträge zu bewegen. Ich benutzen gtk.Combo, um dieses Beispiel zu machen, aber das Problem ist, dass ist veraltet.
Ich brauche ein Beispiel dafür, wie würden Sie tun, was ist genau das Bild.
Lösung
import pygtk
import gtk
import gobject
def window_delete_event(*args):
return False
def window_destroy(*args):
gtk.main_quit()
if __name__ == '__main__':
win = gtk.Window()
# combo's model
model = gtk.ListStore(gobject.TYPE_STRING)
for n in xrange(100):
model.append([str(n)])
# combo
combo = gtk.ComboBoxEntry(model)
win.add(combo)
# combo's style
style = gtk.rc_parse_string('''
style "my-style" { GtkComboBox::appears-as-list = 1 }
widget "*.mycombo" style "my-style"
''')
combo.set_name('mycombo')
combo.set_style(style)
win.show_all()
win.connect('delete-event', window_delete_event)
win.connect('destroy', window_destroy)
gtk.main()
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow