如果我在某些事件(如按钮单击)上将GtkEventBox bg颜色设置为某些自定义颜色。
// Set Window Background color
GdkColor color;
gdk_color_parse("red", &color);
gtk_widget_modify_bg(GTK_WIDGET(myEvtBox), GTK_STATE_NORMAL, &color);
再次点击后我需要将其恢复到原始状态/颜色怎么做? 我需要记住该小部件状态的默认颜色吗?
如果您仔细阅读文档,可以节省一些时间并更快地得到答案。如果你通过NULL
而不是&color
,那么你撤消之前调用gtk_widget_modify_bg()
的效果。
作为ptomato
答案的补充:
在python中,值必须是None
,例如:
label.override_color(Gtk.StateFlags.NORMAL,
None
)