更改 Gtk3 中 Gtk.Entry 的背景颜色

4 投票
1 回答
2488 浏览
提问于 2025-04-18 15:11

我想把我的Gtk.Entry控件的背景颜色改成红色,这样可以显示这个字段有错误。

我找到了几种方法可以做到这一点。

entry.modify_bg -> no change
entry.override_bg -> no change
entry.modify_base -> no change

那么,正确的方法是什么呢?

1 个回答

5

你可以使用 entry.override_background_color(Gtk.StateFlags.NORMAL, ...) (而不是 override_bg())或者你可以创建一些CSS样式:

provider = Gtk.CssProvider()
provider.load_from_data('.entry { background: red; }')
Gtk.StyleContext.add_provider_for_screen(Gdk.Screen.get_default(), provider,
    Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)

撰写回答