我试图用 vala 覆盖 gtk 按钮的背景颜色,但它不适用于某些主题。所以,这段代码
var b = new Button ();
b.label = "test";
b.margin = 10;
b.override_background_color (Gtk.StateFlags.NORMAL, color (yellow));
Run Code Online (Sandbox Code Playgroud)
看起来像这样:
适应(我想要的)
阿德维塔
氛围
那么我错过了什么?
gtk_widget_override_background_color()已弃用且不再使用。使用 CSS 代替:
var css = "* { background: #FFFF00; }";
var p = new Gtk.CssProvider();
try {
p.load_from_data(css, css.length);
b.get_style_context().add_provider(p, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION);
} catch (GLib.Error err) {
// handle err
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1009 次 |
| 最近记录: |