Когда разрабатываете свой 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
🌐 Young professionals from Uzbekistan🇺🇿, Kazakhstan🇰🇿, the Kyrgyz Republic🇰🇬, Tajikistan🇹🇯, and Turkmenistan🇹🇲 — this is your chance to join the World Bank, International Finance Corporation (IFC), or Multilateral Investment Guarantee Agency (MIGA)!
🤝 Successful candidates will receive a 2-year term contract as mid-career staff (GF level), with the possibility of a 5-year renewable appointment based on performance.
🧭 Work locations include Washington, DC, or one of the World Bank Group (WBG) country offices across the globe.
🏁 Launch your career at the WBG through the Young Professionals Program — designed for dynamic leaders who are ready to contribute to ending extreme poverty and boosting shared prosperity.
➡️ Eligibility requirements:
✅ National of a World Bank Group member country.
✅ At least 4-6 years of full-time professional experience.
✅ Relevant master’s degree (or higher) completed by September 1, 2026.
✅ Excellent English communication skills (fluency in other languages might be advantageous to your application).
✅ Not currently employed at the WBG and not restricted by its eligibility policy.
📝 Applications are open September 1–30, 2025: http://bit.ly/3K5u395
📢Please share with eligible candidates across Central Asia and encourage them to apply.
#WBGYPP
World Bank Young Professional Program 2026 (WBG YPP)
Apply: https://opportunitiescorners.com/world-bank-group-young-professionals-program/
Early Career to Start a Career with World Bank for a 5 Year Contract.
It Covers All Expenses and the Training will be in Washington DC.
Deadline: 30th Sept 2025
#WBGYPP#YoungProfessionalsProgram#WorldBankGroup#OpportunitiesCorners
🌐 Hey, young professionals from #CentralAsia, including those from #Uzbekistan, #Kazakhstan, #KyrgyzRepublic, #Tajikistan, and #Turkmenistan, apply for the World Bank Group's Young Professional Program (WBG YPP) to join our global team!
🤝 Through the WBG YPP, we select top talent to advance the World Bank Group’s mission. Nearly a thousand YPP alumni work at the World Bank Group today, at the World Bank, IFC, and MIGA.
Eligibility Requirements
✅ Date of birth on or after October 1, 1992.
✅ Nationality of a WBG member country (nationals of all Central Asian countries are eligible to apply).
✅ Over 4 years of full-time work experience after successfully completing undergraduate studies.
✅ Completion of a masters-level degree or equivalent in a relevant field, or a higher qualification in a relevant field, before September 1, 2025.
✅ Excellent command of spoken and written English language (fluency in other languages might be advantageous to your application).
Contract Terms
📝 If you are invited to join the Program, your offer will include a 5-year term contract as a mid-career staff member (GF level) that may be renewable based on performance.
🛂 You also might be eligible for a US visa (G-type) for you and your dependents.
🌍 You may be located in Washington, DC, or any of the WBG country offices worldwide, and must be prepared to relocate accordingly.
🔎 Learn more: http://wrld.bg/wOKz50T4hQQ#WBGYPP