C++ 如何在GTK2中使用GTK RC文件

C++ 如何在GTK2中使用GTK RC文件,c++,styles,gtk,gtk2,rc,C++,Styles,Gtk,Gtk2,Rc,这是我的代码: int main(int argc, char *argv[] ) { gtk_init(&argc, &argv); GtkWidget *window; GtkButton *button; gtk_rc_parse("style.rc"); window = gtk_dialog_new(); gtk_widget_set_name(window, "window"); g_signal_con

这是我的代码:

int main(int argc, char *argv[] ) {

    gtk_init(&argc, &argv);

    GtkWidget *window;
    GtkButton *button;

    gtk_rc_parse("style.rc");

    window = gtk_dialog_new();
    gtk_widget_set_name(window, "window");
    g_signal_connect(window, "destroy", G_CALLBACK (destroy), NULL);
    gtk_window_fullscreen(GTK_WINDOW(window));

    button = GTK_BUTTON(gtk_button_new_with_label ("Quit"));
    gtk_widget_set_name(GTK_WIDGET(button), "button");
    g_signal_connect_swapped (GTK_WIDGET(button), "clicked", G_CALLBACK (gtk_widget_destroy), window);
    gtk_widget_set_can_default (GTK_WIDGET(button), TRUE);
    gtk_box_pack_start (GTK_BOX (GTK_DIALOG(window)->vbox), GTK_WIDGET(button), FALSE, FALSE, 0);
    gtk_widget_grab_default (GTK_WIDGET(button));
    gtk_widget_show (GTK_WIDGET(button));

    gtk_widget_show (window);
    gtk_main();
}
这就是我的风格。rc:

style "button"
{
  fg[PRELIGHT] = { 0, 1.0, 1.0 }
  bg[PRELIGHT] = { 0, 0, 1.0 }
  bg[ACTIVE] = { 1.0, 0, 0 }
  fg[ACTIVE] = { 0, 1.0, 0 }
  bg[NORMAL] = { 1.0, 1.0, 0 }
  fg[NORMAL] = { .99, 0, .99 }
  bg[INSENSITIVE] = { 1.0, 1.0, 1.0 }
  fg[INSENSITIVE] = { 1.0, 0, 1.0 }
}
widget "*GtkButton" style "button"
但我的按钮看起来完全是标准的。我使用的rc文件是错误的吗?它是从官方GTK教程中复制的。 另外,如果我输入的是随机名称而不是style.rc,则不会出现错误,因此我根本不知道它是否正在注册。

如果有人像我一样尝试查找它,问题中会提到这个问题。它显示了RC文件格式和其他文档。此外,还有一个问题。