在Gtk3中改变Gtk.Entry的背景颜色

4

我想把我的 Gtk.Entry widget 的背景颜色改成红色,以显示该字段有错误。

我找到了几种实现方法。

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)

CssProvider是我让它工作的方式。虽然override_background_color(我想说的)没有起作用。 - HappyHacking

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接