Когда разрабатываете свой 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 Kalapani region is a small Himalayan area claimed by both India and Nepal. Its strategic location at the tri-junction with China makes it a unique hotspot of geopolitical geography. ✨
#borders⚡#dispute⚡#Himalayas⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography
👉more Channels
🌍 The border between Spain and Portugal includes a tiny disputed area called Olivenza, claimed by both countries for over 200 years. Its unique status shapes maps and diplomacy even today. ✨
#borders⚡#dispute⚡#Europe⚡#geography⚡#nature⚡#earth
👉subscribe Amazing Geography🌍
🔴Biznes va tadbirkorlik oliy maktabida Tijorat nizolarini hal qilishning muqobil usullarini qo‘llash bo‘yicha ikki kunlik amaliy seminar yakunlandi
🇺🇿Mazkur seminar Oliy maktab tomonidan Osiyo taraqqiyot banki bilan hamkorlikda🇮🇹Italiya, 🇩🇪Germaniya, 🇵🇱Polshadan arbitraj va mediatsiya sohasining yetakchi ekspertlari, shuningdek, tijorat nizolarini arbitraj va mediatsiya asosida ko‘rib chiqishda katta tajribaga ega bo‘lgan mahalliy mutaxassislarni taklif etgan holda tashkil etildi.
🤔A two-day practical seminar on the application of alternative methods for resolving commercial disputes has been completed at the Graduate School of Business and Entrepreneurship
🇬🇧 The event was organized by the Graduate School in cooperation with the Asian Development Bank and featured leading experts in the field of arbitration and mediation from 🇮🇹Italy,🇩🇪Germany, 🇵🇱Poland, as well as local specialists with extensive experience in handling commercial disputes using arbitration and mediation.
🔴 В Высшей школе бизнеса и предпринимательствазавершился двухдневныйпрактический семинар по применению альтернативных способов разрешения коммерческих споров
🇷🇺Cеминар был организован Высшей школой при сотрудничестве с Азиатским банком развития с участием ведущих экспертов в области арбитража и медиации из 🇮🇹Италии, 🇩🇪Германии, 🇵🇱Польши, а также местных специалистов, имеющих богатый опыт в рассмотрении коммерческих споров на основе арбитража и медиации.
#GraduateSchool#ADB#Dispute#Commerical
🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube
🏦 Nizolarni muqobil hal qilish orqali biznes nizolarni bartaraf etish imkoniyatlari
🇺🇿 Oliy maktabda OTB hamkorligida xususiy biznes, xo‘jalik birlashmalari va davlat organlari vakillari, tadbirkorlik subyektlari uchun tijorat nizolarini muqobil hal etish masalalari bo‘yicha ikki kunlik amaliy seminarbo‘lib o‘tmoqda.
🌀 Options for Resolving Business Disputes- Focus on Alternative Dispute Resolution.
🇬🇧A two-day practical seminaris being heldat the Graduate School, focusing on alternative dispute resolution in commercial matters for representatives of private businesses, economic associations and government agencies.
🔴 Способы разрешения бизнес-споров: акцент на альтернативные методы разрешения конфликтов
🇷🇺 В Высшей школе совместно с АБР проводится двухдневный практический семинарпо вопросам альтернативного разрешения споров в коммерческих спорах для субъектов предпринимательства, включая представителей частного бизнеса, хозяйственных объединений и государственных органов.
#GraduateSchool#ADB#Dispute#Commerical
🔝Web-site |🔝Facebook | 🔝Instagram | 🔝Youtube
Community Divided Over Bybit's Request
Bybit calls on DEX ParaSwap DAO to return 44.67 wETH (~$100,000) in fees from hacked funds. Community opinions split: some advocate for returning the funds to avoid regulatory scrutiny, while others argue that the DAO shouldn't fix centralized service mistakes. A compromise of keeping 10% as a reward was suggested.
For more details, check the complete news article.
#Bybit#ParaSwap#DeFi#Crypto#DAO#Hacking#Ethereum#wETH#Regulation#Funds#Fees#Community#Dispute#Security#Blockchain#Tech#FinTech#Investing#Carl#VC