У меня возникли проблемы с получением определенных свойств из системы Gtk3 theme css (gtk.css) для рендеринга контекстных компонентов в моем приложении Gtk3 для python.get gtk theme css property from python Gtk3
То, что я из моей системы темы gtk.css является следующим:
entry {
...
color: #5c616c;
border-color: #cfd6e6;
background-color: #ffffff; }
entry:focus {
background-clip: border-box;
color: #5c616c;
border-color: #5294e2;
background-color: #ffffff; }
entry:disabled {
color: rgba(92, 97, 108, 0.55);
border-color: rgba(207, 214, 230, 0.55);
background-color: rgba(255, 255, 255, 0.55); }
entry.warning {
color: white;
border-color: #F27835;
background-color: #f7ae86; }
entry.warning image {
color: white; }
...
То, что я хотел бы получить от него тех контекстных цветов, например, background-color
от entry.warning
и т.д.
Я сделал некоторые исследования, и вот где я застрять:
css_provider = Gtk.CssProvider.get_default()
warning_color = css_provider.get_style(something to put here)
Большое спасибо за вашу помощь!
спасибо. Мой следующий вопрос будет заключаться в том, что я хочу использовать контекстный цвет как цвет текста (тег) в виджетах textview, и нет необходимости, чтобы у меня был фактический объект ввода. –
Как я уже сказал, вы не можете надежно получить фоновый цвет, потому что не может быть такого понятия, как «цвет фона» для конкретного виджета. Есть несколько стилей, которые вы можете получить, используя 'context.get_property()'. – ptomato