Когда разрабатываете свой GUI с помощью PyQt для какого-либо софта бывает необходимо позаимствовать цвета из текущего стиля интерфейса. Например, чтобы правильно раскрасить свои виджеты, подогнав их по цвету. Ведь бывает, что ваш GUI используется в разных софтах. Причём некоторые со светлой темой а другие с тёмной.
По умолчанию стили наследуются, но если вы задаёте какую-либо раскраску для части виджета через свой styleSheet, то требуется ссылаться на цвета текущего стиля.
Как это сделать? Как получить нужный цвет из палитры имеющегося стиля? Это достаточно просто, нужно использовать класс QPalette и его роли.
Например, мне нужно достать цвет текста из одного виджета и применить его в другом как цвет фона (не важно зачем именно так, просто захотелось😊).
Получаем палитру виджета и сразу достаём нужный цвет, указав его роль.
from PySide2.QtGui import QPalette
color = main_window.palette().color(QPalette.Text)
теперь можем использовать этот цвет в стилях
my_widget.setStyleSheet(f'background-color: {color.name()};')
Готово, мы динамически переопределили дефолтный стиль используя текущий стиль окна!
На самом деле есть запись покороче, в одну строку и без лишних переменных. Не очень-то по правилам CSS, но Qt это понимает.
my_widget.setStyleSheet('background-color: palette(Text);')
Этот способ не подходит если вам нужно как-то модифицировать цвет перед применением в своих стилях. В этом случае потребуется первый способ.
Зато он прекрасно сработает в файле .qss, то есть не придётся в коде прописывать раскраску отдельных элементов через ссылки на палитру, всё красиво сохранится в отдельном файле .qss!
QListView#my_widget::item:selected {
background: palette(Midlight);
}
Про имеющиеся роли можно почитать здесь🌍
#qt#tricks
#Francia
Durante un suo comizio a Figeac in #Occitania, Emmanuel #Macron è stato contestato con un striscione che recitava "Quando tutto sarà privato saremo privati di tutto".
Il candidato Presidente ha risposto dicendo "Congratulazioni per essere in una democrazia dove puoi sfidare il presidente! Parlerò con loro dopo il comizio."
@UltimoraPolitics
Cardabèla — Cantos y danzas del Languedoc (Guimbarda, 1979)
#medieval#traditional#Occitania#France
Cardabela — французская группа из города Монпелье. Cantos y Danzas del Languedoc — их третий альбом с песнями их родного Лангедока, исторической области на юге Франции, части Окситании, родины средневековых трубадуров, население которой традиционно говорило на окситанском языке. Участники группы изучали музыку и пение трубадуров XII века. В результате их знания и происхождение сильно сказалось на звуке. Перед вами почти никому не известный выдающийся образец очень убедительного средневекового окситанского фолка.
Telegram
Jean Ségurel — Autour des Monédières (Odeon, 1959)
#chanson#traditional#Occitania#France
Для народной музыки Окситании, родины трубадуров, расположенной на юге Франции и в небольшой части Испании и Италии, характерны баллады. В балладах с этого альбома слышно переплетение мотивов этих стран, однако из-за исполнения Жана Сэгуреля они приобретают оттенок французского шансона. Жан-Батист Сэгурель – французский аккордеонист, композитор и дирижер, родился 13 октября 1908 года во французской коммуне Шомей. Сэгурель начинал как скрипач, однако, взяв в руки аккордеон по возвращению с военной службы, он осознал, что хочет посвятить этому инструменту свою жизнь. Значительный период карьеры Сэгурель был менестрелем своего времени: выступал на различных ярмарках и свадьбах. Друзья Жана-Батиста представили его основателю лейбла «Le Soleil», благодаря которому он утвердился как профессиональный музыкант. В 1968 году генерал де Голль присвоил ему звание кавалера Почетного легиона.
Spotify | AppleMusic
Bachàs — Cants E Mùsicas Dau Païs Nissart (Ventadorn, 1979)
#traditional#mandolin#violin#flute#hurdy_gurdy#accordion#Occitania#France
Bachàs — французский коллектив из города Ницца, исполнявший окситанский фолк на окситанском языке. Перед вами их первый альбом, на котором можно услышать старинные песни, инструментальную музыку и музыка для танцев из города Прованс, окрестностей Ниццы и других исторических областей юга Франции. Разнообразное звучание напоминает о музыке окситанских трубадуров и о народных мотивах соседних Испании и Италии.
Telegram
Lo Jai — Musiques Traditionnelles Du Limousin (Revolum, 1981)
#traditional#chabrette#ocarina#pifres#hurdy_gurdy#tambours#violin#Occitania#France
Группа Lo Jai была основана в Лионе в 1980 году, когда три участника фолк-группы Le Grand Rouge присоединились к своему коллеге, чтобы исследовать музыку Лимузена. Группа исполняет композиции в региональном стиле Лимузена, который напоминает арабскую музыку и служит напоминанием о том, что французская культура представляет собой не столько монолитную сущность, сколько множество региональных культур, звуков и языков. Перед вами первый альбом коллектива.
🔗Telegram