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