我正在尋找一種方法,在 PyGObject 應(yīng)用程序上,在主題更改時(shí)收到通知。我需要這個(gè)通知,因?yàn)槲艺谑褂美L制圖表,matplotlib并且我將圖表的文本顏色設(shè)置為當(dāng)前 GTK3 主題的標(biāo)準(zhǔn)標(biāo)簽顏色:temp_label = Gtk.Label()scrolled_window.add(temp_label)text_color = rgba_to_hex(temp_label.get_style_context().get_color(Gtk.StateType.NORMAL))但是,當(dāng)用戶切換主題時(shí),我需要獲取新的標(biāo)簽顏色并重新繪制圖形。目前,從深色主題變?yōu)闇\色主題會(huì)使標(biāo)簽變得不可讀:
1 回答

回首憶惘然
TA貢獻(xiàn)1847條經(jīng)驗(yàn) 獲得超11個(gè)贊
我發(fā)現(xiàn)最接近的是連接到gtk-theme-name:
Gtk.Settings.get_default().connect("notify::gtk-theme-name", self._on_theme_name_changed)
@staticmethod
def _on_theme_name_changed(settings, gparam):
print("Theme name:", settings.get_property("gtk-theme-name"))
添加回答
舉報(bào)
0/150
提交
取消