こんにちは、私はpythonとGtk + 3の新機能です。 Gtk.TreeViewを含むGtk + 3を使ってGuiを作成しようとしています。私は別の色でTreeViewの奇妙なレコードを表示しようとしていますが、私はいつも失敗します。私はインターネットとStackOverFlowのすべてを検索しますが、何か役に立つものは見つかりませんでした。だから私はあなたに助けを求めます。 i.m Pythonを使用する3.4.3。前もって感謝します!Python 3とGtk + 3 - TreeViewと行の代替色の問題
#!/usr/bin/env python3
# -*- coding: ISO-8859-1 -*-
import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk, Gdk
xim = [("Oranges", 5), ("Apples", 3), ("Bananas", 1), ("Tomatoes", 4), ("Cucumber", 1), ("potatoes", 10),
("apricot", 100)]
window = Gtk.Window()
window.connect("destroy", lambda q: Gtk.main_quit())
liststore = Gtk.ListStore(str, int)
for i in range(len(xim)):
liststore.append(xim[i])
treeview = Gtk.TreeView(model=liststore)
window.add(treeview)
treeviewcolumn = Gtk.TreeViewColumn("Item")
treeview.append_column(treeviewcolumn)
cellrenderertext = Gtk.CellRendererText()
treeviewcolumn.pack_start(cellrenderertext, True)
treeviewcolumn.add_attribute(cellrenderertext, "text", 0)
treeviewcolumn = Gtk.TreeViewColumn("Quantity")
treeview.append_column(treeviewcolumn)
cellrenderertext = Gtk.CellRendererText()
treeviewcolumn.pack_start(cellrenderertext, True)
treeviewcolumn.add_attribute(cellrenderertext, "text", 1)
css_provider = Gtk.CssProvider()
css = """
GtkTreeView row:nth-child(odd){background-color: #ccc}
"""
css_provider.load_from_data(css.encode())
Gtk.StyleContext.add_provider_for_screen(Gdk.Screen.get_default(),
css_provider,
Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
window.show_all()
Gtk.main()
GTK + 3.18以降で問題になるようですが、このコメントhttp://stackoverflow.com/questions/36002296/how-に従って代替光 - 暗 - 行 - gtktreeview#comment60118257_36047961 – B8vrede