Когда разрабатываете свой 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
The question posed to men in the US and Russia was: "Would you fully support your wife?"
🔻In Russia it depends on several issues: husband's salary (if it is high, wife is likely not much into work, but keeps the house and takes care of kids), wife's ambitions, the age and social status of the respondents.
🔻But on average, the situation when husband fully supports his wife is not rare in Russia.
❓I'm curious if it is common in your country for the husband to fully support his wife (not girlfriend!), or is it more of a 50/50 split on expenses?
#Russian_culture
#Russiantraditions
😎 Stay with @learnRCRussian
💛 8 July — Day of Family, Love and Fidelity 🕊
Today, Russia celebrates a heartfelt and meaningful holiday — the Day of Family, Love and Fidelity, which is observed in honour of Saints Peter and Fevronia of Murom, revered as the patron saints of marriage and family happiness in the Orthodox tradition.
This day serves as a reminder of the timeless values that form the foundation of any society: love, fidelity, mutual understanding, and care for one another. It unites generations, strengthens family ties, and inspires the preservation of traditions and their transmission to future generations.
🌿 The symbol of the holiday is the daisy, representing purity, sincerity, and faithful love. On this day, it is customary to give daisies, hold family gatherings, and congratulate couples — especially those who have shared many years together in harmony.
The Consulate General of Russia in Cape Town extends its warmest congratulations to Russian compatriots and friends of Russia on this special occasion and wishes every family peace, happiness, and enduring love!
#Russia#DayOfFamilyLoveAndFidelity#RussianTraditions
🎉👰Museum Day ONLINE: “Wedding Ceremonies in Russia”
📅 1 July 2025 | 18:00
In celebration of the Day of Family, Love, and Fidelity, we invite you to a special online meeting as part of the *Hermitage Evenings* project!
Discover the rich traditions of Russian wedding ceremonies through the ages in a joint project of the State Hermitage Museum and the Russian House in Brussels.
✨ Language: Russian / French
✨ Live online broadcast
Join us for a beautiful cultural evening celebrating love, family, and history!
👉More details & registration
#HermitageEvenings#RussianHouseBrussels#FamilyLoveFidelityDay#RussianTraditions