GTKスタイルのクラスのテキストカラーを取得しようとしています。 私はウィジェットのパスとそのプロパティを取得するクラスを持つGtkStyleContextを持っています。GTK3:スタイルのクラスプロパティを取得する
GtkWidgetPath* widgetPath = gtk_widget_path_new();
gtk_widget_path_append_type(widgetPath, GTK_TYPE_WINDOW);
gtk_widget_path_iter_set_name(widgetPath, -1 , "UnityPanelWidget");
GtkStyleContext *context = gtk_style_context_new();
gtk_style_context_set_path(context, widgetPath);
gtk_style_context_add_class(context, "gnome-panel-menu-bar");
gtk_style_context_add_class(context, "unity-panel");
私はgtk_style_context_lookup_colorを使用し、それは通常のテキストの色ではなく、GNOMEパネル・メニュー・バーまたはユニティ・パネル内のテキストの色を取得します。
私はGtkCssProviderを使ってみましたが、追加したクラスがないジェネリックスタイルを取得しました。
私はQtアプリケーションでこれを使用して、ネイティブのGTK3のルックアンドフィールを取得しています。 このコードはGTKアプリケーションで正常に動作しています。
ありがとうございます!
同じプロセスでGtk2とGtk3をQtで別のスタイルを使って実行したときのエラーを回避して、QtでGtk3を実行することができました。私はいくつかのハックをやり終えた。とにかく返信いただきありがとうございます! –