Comment puis-je mettre une barre de défilement à l'intérieur d'un gtk.ComboBoxEntry?

StackOverflow https://stackoverflow.com/questions/873328

  •  22-08-2019
  •  | 
  •  

Question

J'ai un Combobox avec plus d'une centaine d'entrées et il est très difficile à parcourir avec une barre de défilement.

texte alt http://img211.imageshack.us/img211/6972/screenshotprubapy .png

Je veux faire exactement ce qui est dans l'image. Avec la barre de défilement à droite de sorte qu'il serait plus facile de se déplacer à travers les entrées. Je gtk.Combo pour faire cet exemple, mais le problème est que est dépréciée.

je besoin d'un exemple de comment voulez-vous faire ce qui est exactement l'image.

Était-ce utile?

La solution

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()
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top