Когда разрабатываете свой 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
🏆 2026 ASIA STAR ENTERTAINER AWARDS
ASEA Fan Choice Singer 🎤
🗓️ Ends: 17 May 2026
📱 My1Pick App
Link : Voting Link
fsn-app.my1pick.com/app/link/theme…
📱 Podoal App
Link : Voting Link
global.podoal.io/app/fandings/5…
📱 Mubeat App
Link : Voting Link
mubeat.applink.info/9hFE0waZsG
📍Check Comment Box for Tutorial
🤍💫 | #voting
@foreverbulletproof7
🏆 MUSIC AWARDS JAPAN
Best of Listeners’: International Song by Spotify
📣 Vote for DSYLM in Music Awards Japan Best of Listeners’ Choice!! 🏃♀️🫷
🗳️ 2 vts for Premium | 1 vt for Non-Premium
📆 Final voting ends on May 20
Link : open.spotify.com/playlist/37i9d…
📍Check Comment Box for Tutorial
🤍💫 | #voting
@foreverbulletproof7
🏆 SEOUL MUSIC AWARD 2026
BTS are nominated in 3 categories:
🏆 Korea Wave Award:
Link : promo-web.idolchamp.com/app_proxy.html…
🏆 Popularity Award:
Link : promo-web.idolchamp.com/app_proxy.html…
🏆 K-pop World Choice - Group:
Link : promo-web.idolchamp.com/app_proxy.html…
📝 Criteria: 100% voting
⏰ Ends May 28, 2026 23:59 (KST) on Idol Champ
📍Check Comment Box for Tutorial
🤍💫 | #voting
@foreverbulletproof7
🏆 Seoul Music Awards
🛑 Focus your votes on Korea Wave Award category!
⇢ Korea Wave Award - #1 BTS 57.85%
App: Idol Champ
Period: 05.08~05.28
Result: sum of all rounds
🤍💫 | #voting
@foreverbulletproof7
[🏆 2026 ASIA STAR ENTERTAINMENT AWARDS]
🛑 5 DAYS LEFT for Fan Choice Singer Final Voting
👉🏻 Status 🚨
▶️ Mubeat #4
▶️ Podoal #7 🔺
▶️ My1Pick #6 🔺
▶️ 100% Voting
▶️ until 5/17
🤍💫 | #voting
@foreverbulletproof7
Everyone please vote for BTS for Forbes Popularity on Mnet plus.
Voting is super easy, We do not have much time.
🔻 : https://play.google.com/store/apps/dev?id=4990449589140386036
🤍💫 | #voting
@foreverbulletproof7
The winners of AMAs will be announced at the AMAs Award Show 💜
⏰ DATE | TIME:
🇺🇸 May 25 at 8PM ET
🇺🇸 May 26 at 9AM KST
🤍💫 | #voting
@foreverbulletproof7
VOTE FOR BTS FOR FORBES POWER 40 CELEBRITY 2026
We’re falling behind fast 🔴 and the gap won’t close on its own
Start collecting MplePoints and cast your votes for BTS! 🌊🏄♂️
LINK : mnetplus.onelink.me/TRa8/xohkwx0b?…
🤍💫 | #voting
______
@foreverbulletproof7
______
BTS has been nominated for the ‘Power Celebrity 40’ list by Forbes Korea.
🏆 Prizes:
• Trophy
• Online PR
• Feature in Forbes Korea Magazine
📲 Vote via Mnet Plus App
Vote here: mnetplus.onelink.me/TRa8/xohkwx0b?…
Ends: May 10, 11:59PM KST
🤍💫 | #voting
@foreverbulletproof7
⚖️🗳️SUPREME COURT CASE COULD RESHAPE VOTING RIGHTS ACT
🔹 Louisiana v Callais challenges constitutionality of Section 2 of Voting Rights Act 📋
🔹 Case targets law prohibiting electoral discrimination based on race nationwide ⚡
🔹 Ruling against could eliminate or dilute Black and Hispanic-majority districts 💀
🔹 Up to nineteen Democratic-held seats primarily in the South at risk 🚨
🔹 Florida, Kentucky, Virginia pursuing mid-decade redistricting before midterms 🗺️
🔹 Governor DeSantis calls special legislative session for April redistricting 🏛️
Major implications for November midterms and minority representation 🔥📊
#USNews#voting
Trending Apps: Enhance Voting with Your Feedback
#Voting#Apps
Trending Apps introduces a new Voting feature and seeks user feedback to improve it. Users can report bugs, suggest improvements, or share ideas to help refine the Apps Center.
Source: link
@tonlines