2016-11-14 2 views
0

В моем приложении Python есть ListBox с некоторыми строками-заполнителями в них прямо сейчас.Строка списка строк с CSS в GTK + 3

for i in range(0, 10): 
    myListRow = Gtk.ListBoxRow() 
    myList.add(myListRow) 

    myListItem = Gtk.Box(name="MyListItem", orientation=Gtk.Orientation.HORIZONTAL) 
    myListRow.add(Gtk.Label(label="placeholder")) 

Я столкнулся с тонной проблемой, ставя ряды в любом виде. Используя произвольный цвет фона, ни одна из этих результата в каких-либо изменений:

.list row { 
    background: #f00; 
} 

-

.row { 
    background: #f00; 
} 

-

row { 
    background: #f00; 
} 

-

GtkListBox row { 
    background: #f00; 
} 

По какой-то причине, это однако, и только с площадью ListBox, который имеет этикетки в нем:

.list > * { 
    background: #f00; 
} 

Тестирование с .list .label { background: #0f0 } подтверждает, что это не просто стилизации этикетки. Строки, безусловно, находятся в ListBox и, безусловно, могут быть оформлены в стиле, но я не знаю, что такое селектор CSS для этих строк ListBox. Любая помощь будет оценена по достоинству.

Использование PyGI для запуска GTK + 3.18 в Python 3.4.

+0

Хороший способ узнать, использовать инспектор GTK (ctrl + shift + I или ctrl + shift + D). В GTK 3.20 это становится намного проще, поскольку имена узлов CSS перечислены в документации. – ptomato

+0

@ptomato, который сработал, мне удалось разобраться! Спасибо. – Kavaeric

ответ

0

Я заставил отладчика/инспектора GTK работать, добавив «GTK_DEBUG» в мои системные переменные со значением «интерактивный» для просмотра.

Название элемента строки фактически list-row.

Смежные вопросы