web-dev-qa-db-ja.com

実行時にアプリのGTKテーマを変更するにはどうすればよいですか?

最近、monodevelopが実行時にGTKテーマを変更できることに気付きました。すばやくアプリに追加するにはどうすればよいですか?

2
Tachyons

必要に応じて、私の Python、GTK、CSSのブログ投稿 をチェックしてください。

私はそれを行う方法について少し書き上げようとしました(私はそれを私の迅速なアプリにも使用しました)。

2
wolfv

_Gtk.CssProvidor_を使用してcssファイルをロードできます。例えば:

_css_provider = Gtk.CssProvider()
css_provider.load_from_file("file_name.css")
screen = Gdk.Screen.get_default()
style_context = window.get_style_context()
style_context.add_provider_for_screen(screen, css_provider, Gtk.STYLE_PROVIDER_PRIORITY_APPLICATION)
_

ここで、「file_name.css」はロードするcssファイル(ubuntuのテーマは/usr/share/themes/THEME_NAME/gtk-3.0/にあるようです)、windowは使用しているウィンドウウィジェットです。文字列からCSSをロードしたい場合は、css_provider.load_from_data(string_name.encode('UTF-8'))の代わりにcss_provider.load_from_file("file_name.css")を使用できます

リソース:

1
Sam Bickley