![如何使 GTK Inspector 更改永久生效?](https://linux22.com/image/1028839/%E5%A6%82%E4%BD%95%E4%BD%BF%20GTK%20Inspector%20%E6%9B%B4%E6%94%B9%E6%B0%B8%E4%B9%85%E7%94%9F%E6%95%88%EF%BC%9F.png)
答案1
据我所知,这是一个 GTK Widget“属性”
选项 1:如果 GUI 以文本形式声明
仅当以下情况时才可以在运行时包中更改它:
- 使用 GTK Builder 和 GUI 的应用程序在运行时从 XML 加载。
- 基于脚本(例如 Python)的应用程序。
否则,没有其他办法,只能更改源代码本身,因为应用程序不使用 GTK 构建器,它基于编译的编程语言。GUI 以二进制格式嵌入在可执行文件或其共享库中。
GTK Widget“属性”与 CSS 样式不同。我确实检查了它:
padding-top
它们margin-top
并不相同,只是增加了更多空间。即使在层次结构中向下移动也没有效果,我怀疑它被运行时程序更新/覆盖了。无论如何,这是我首先尝试调试和跟踪的,可能是我错过了一些东西:
.editor.GtkSourceView.monospace.sourceview.view { border-style: solid; border-top-width: 3px; border-top-color: rgb(0,255,0); border-left-width: 2px; border-left-color: rgb(0,255,255); background-color: rgb(255,0,0); margin-top: 100px; padding-top: 50px; } .editor.GtkSourceView.monospace.sourceview.view > text { border-style: solid; border-top-width: 5px; border-top-color: rgb(255,255,0); border-left-width: 3px; border-left-color: rgb(0,255,255); /* not effective ??? */ background-color: rgb(0,0,200); margin-top: 10px; padding-top: 100px; margin: 50px; padding: 30px; }
答案2
GTK 检查器会有所帮助,您需要选择“CSS 节点”选项卡才能找出要更改的内容。该选项卡将显示已更改的 CSS 节点。更改“本地 GTK4 CSS”的方法是正确的,否则,在主题中更改它只会持续到下一次更新。使用 gnome-calculator 的示例(我没有安装 gedit):
GTK_DEBUG=interactive gnome-calculator
将打开两个窗口,一个是计算器,另一个是“调试器”。让我们检查一下红色的取消按钮:
按下“选择对象按钮”并单击您想要检查的控件 - 调试器将消失并显示属性。更改为“CSS 节点”:
“C”按钮是“清除按钮”或“文本按钮”样式。第一步,您可以尝试使用 css 选项卡(这是一个游乐场)进行更改:
button.clear-button label {color:yellow;}
因此,您已经更改了按钮的颜色(作为示例)。要保留它,您必须将此行写入文件:
- ~/.config/gtk-3.0/gtk.css
- ~/.config/gtk-4.0/gtk.css
取决于应用程序是否已使用 GTK4.0 或 GTK3.0
这是一项繁琐的工作,但由于 CSS 没有真正记录下来,所以我设法通过这种方式创建自己的主题。