我使用GTK +在C中开展项目。 该项目仅适用于GTK + 3.6。
我想将所有GTKTextView设置为等宽字体。在最后一次将GTK更新到GTK3.20之前,我的CSS表格与以下内容一致:
GtkTextView {
font: Mono
}
现在,它已不再适用了。但是,林间空地有一个属性:
<property name="monospace">True</property>
但是这个属性存在,因为GTK 3.16和debian stable在GTK3.14上。当然我希望它是便携式的。
我的问题是:我怎么能这样做?如何将所有gtkTextView设置为等宽字体?
答案 0 :(得分:3)
GTK 3.20改变了CSS选择器的工作方式。
Pre-GTK 3.20,这是正确的:
GtkTextView {
font-family: monospace;
}
从GTK 3.20开始,这是正确的:
textview {
font-family: monospace;
}
如果您对某个特定平台不确定,可以向GTK Inspector查看需要哪个选择器:使用GTK_DEBUG=interactive
运行您的应用,然后按 Ctrl + 移 + d
值得注意的是,GTK 3.20之前的CSS选择器是实验性的,并不打算成为稳定的API。
如果您必须同时支持这两种表单,那么您最好的选择是制作两个样式表并加载其中一个,具体取决于GTK_MAJOR_VERSION
和GTK_MINOR_VERSION
的值。