Как изменить "свойство стиля" в pygtk2 - PullRequest
0 голосов
/ 13 декабря 2018

GTK ComboBox имеет свойство стиля "размер стрелки" ( ссылка ).Я хочу установить его на 0.

К сожалению, следующий фрагмент не работает.Сообщения об ошибках не отображаются, и появляется стрелка с размером по умолчанию (= 15)

import pygtk
pygtk.require('2.0')
import gtk


def the_dialog():
    dialog = gtk.Dialog("Title", None, gtk.DIALOG_MODAL)
    liststore = gtk.ListStore(str)

    for a in ["one","two","three"]:
        liststore.append([a])

    rc_str = """
   style 'no_arrow_style' {
       GtkComboBox::arrow-size = 0
   }
   widget_class '*' style 'no_arrow_style'
   """
    gtk.rc_parse_string(rc_str)

    combo_box = gtk.ComboBox()
    cell = gtk.CellRendererText()
    combo_box.pack_start(cell)
    combo_box.add_attribute(cell, 'text', 0)
    combo_box.set_model(liststore)
    combo_box.get_cells()

    dialog.vbox.pack_start(combo_box)
    dialog.show_all()

    dialog.run()


the_dialog()

Поле со списком по умолчанию в форме стрелки "v":

Combo box with default

1 Ответ

0 голосов
/ 14 декабря 2018

GtkComboBox::arrow-size фактически означает «минимальный размер стрелки».Чтобы увидеть разницу, установите значение 100.Фрагмент примера сработал.

...