0

我知道如何更改 GtkButton 的颜色背景,其中一些代码:

GdkColor color;
color.red = 65535;
color.green = 0;
color.blue = 0;
gtk_widget_modify_bg(button,GTK_STATE_NORMAL,&color);

但是当我将它应用到 GtkHBox 时,它不起作用。除了 GtkButton,我不会更改任何 Widget 的背景颜色。任何人都可以帮助我。

4

3 回答 3

1

问题是GtkBox和它的子类不绘制背景,所以不管你告诉它背景颜色它,它不会做任何事情。

如果要更改背景颜色,则需要搜索正在绘制背景的小部件并更改该小部件的颜色,使用gtk_widget_override_background_color

例如,呈现背景的小部件是:

于 2013-10-17T14:58:26.087 回答
0

是的,我有一个答案。我使用 EventBox 绘制背景,它真的很有用。我只是为 HBox 或 VBox 添加父级,并为 HBox 设置背景,就完成了!

于 2013-10-19T02:47:22.083 回答
0

我回答了这个问题:How to add css style to GtkBox in Gtk+ 3

基本上:不要使用gtk_widget_modify_bgor_fg函数,使用 aGtkStyleProvider

于 2013-10-17T09:40:08.110 回答