كيف أضع شريط التمرير داخل gtk.ComboBoxEntry؟
-
22-08-2019 - |
سؤال
لدي Combobox يحتوي على أكثر من مائة إدخال ومن الصعب جدًا التصفح دون وجود شريط تمرير.
نص بديل http://img211.imageshack.us/img211/6972/screenshotprubapy.png
أريد أن أفعل بالضبط ما هو في الصورة.باستخدام شريط التمرير الموجود على اليمين، سيكون من الأسهل التنقل عبر الإدخالات.لقد استخدمت gtk.Combo لعمل هذا المثال ولكن المشكلة هي أنه تم إهماله.
أحتاج إلى مثال لكيفية القيام بما هو عليه بالضبط الصورة.
المحلول
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()
لا تنتمي إلى StackOverflow