GtkCss:在CSS中按id命名对象不';行不通

GtkCss:在CSS中按id命名对象不';行不通,css,c,gtk,Css,C,Gtk,我有一个由Glade生成并使用GtkBuilder加载的简单XML代码: ... <object class="GtkIconView" id="iconbar"> <property name="visible">True</property> <property name="can_focus">False</property> </object> ... 然而,这是行不通的。我只能在CSS文件中将#iconb

我有一个由Glade生成并使用GtkBuilder加载的简单XML代码:

...
<object class="GtkIconView" id="iconbar">
  <property name="visible">True</property>
  <property name="can_focus">False</property>
</object>
...
然而,这是行不通的。我只能在CSS文件中将#iconbar更改为GtkIconView时更改背景色(.GtkIconView标识符也不起作用)

应用程序代码非常简单:

GtkWindow* main_window = ...;
GtkCssProvider* css = gtk_css_provider_new();
gtk_css_provider_load_from_path (css, "dark.css", NULL);
gtk_style_context_add_provider_for_screen (gtk_window_get_screen(main_window), GTK_STYLE_PROVIDER(css), GTK_STYLE_PROVIDER_PRIORITY_APPLICATION);
谁能告诉我,我做错了什么?
谢谢。

使用
名称
属性,例如

<property name="name">iconbar</property>
iconbar

然后您应该能够将小部件称为
#iconbar

谢谢,代码现在终于可以工作了。不过,仅仅因为身份而设置的场景非常难看。那么,Glade生成的对象“id”的用途是什么?该id用于引用
GtkBuilder
对象中的小部件。我相信,一旦小部件被创建,ID就不再存在了。
<property name="name">iconbar</property>