GTK 树视图样式

Tom*_*Tom 3 css treeview gtktreeview pygobject gtk3

简短版本:什么 CSS 选择器可用于设置 GTK TreeView 标题背景的样式?

长版:我试过treeview header, treeview header .button, .button, button, label, GtkTreeView header,header*作为 Gtk.TreeView 标题的选择器。其中,button用于更改标题(color属性)中文本的颜色而不是背景 ( background-color)。 label更改标题文本后面背景的颜色,但在默认情况下在文本周围留下一个大区域。 *有效,但当然也会改变其他一切。

Jos*_*nte 5

我尝试在一个简单的 python 示例中使用Gtk Inspector,它报告树视图类为 .view,标题上的按钮为 .button。使用以下命令为应用程序设置自定义 css 提供程序:

cssProvider = Gtk.CssProvider()
cssProvider.load_from_path("custom.css")
Gtk.StyleContext.add_provider_for_screen(Gdk.Screen.get_default(), cssProvider, Gtk.STYLE_PROVIDER_PRIORITY_USER)
Run Code Online (Sandbox Code Playgroud)

以及具有以下内容的 custom.css 文件:

.view .button { color: Red; background: Cyan; font-weight: bold; text-shadow: none; box-shadow: none; }
Run Code Online (Sandbox Code Playgroud)

结果是:

结果界面

在这里,您可以看到字体颜色为红色、背景为青色的树视图标题。

在 Fedora 23 上测试。

编辑

在 Fedora 26 上,如文档所示。你应该使用:

treeview.view header button { color: Red; background: Cyan; font-weight: bold; text-shadow: none; box-shadow: none; }
Run Code Online (Sandbox Code Playgroud)

结果是相似的。