Когда разрабатываете свой 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
Мастер-класс по ораторскому искусству в рамках недели предпринимательства🎙
Любому предпринимателю важно уметь презентовать себя и свои проекты. Мы в MOST видели не одну слабо подготовленную презентацию, которая портила впечатления о всем проекте в целом.
Поэтому мы устраиваем мастер-класс совместно с ораторским клубом @orator_club . Спикером встречи выступит Ильяс Батыров - предприниматель, оратор и бизнес-тренер.
Ильяс является тренером спикеров TEDx, основателем первого в Казахстане Клуба Ораторов и сооснователем Toastmaster Almaty⚡
⏰ Дата: 15 ноября, 19:00
📍Адрес: г. Алматы, Ходжанова 2/2, MOST IT Hub, 1 этаж, конференц-зал
✅Вход бесплатный, но важно пройти регистрацию по ссылке
https://forms.gle/U1A3gykicZMy6tax7
#GEW2023
С 9-17 ноября в MOST IT Hub начинается международная неделя предпринимательства в рамках Global Entrepreneurship Week! На протяжении недели в хабе будут проводится воркшопы, митапы, панельные сессии и стартап баттлы🔥
14 ноября пройдет открытый митап, посвященный управлением командой. Правильное управление командой является важным аспектом для успеха в любом проекте. Поделится своим опытом работы с командой CEO redmadrobot Central Asia - Агиис Конкабаева.
У Агиис более 10 лет управленческого опыта в направлении SME, CX, Digital. До перехода в redmadrobot Central Asia управляла разработкой в «Альфа-Банк Казахстан» в блоке малого бизнеса: руководила 15-ю agile-командами с более чем 160 разработчиками. В ее опыте более 7 крупных IT-проектов 🙌🏻
⏰Дата: 14 ноября, 19:00
📍Адрес: г.Алматы, Ходжанова 2/2, MOST IT Hub, 1 этаж, конференц-зал
✅Вход свободный, ссылка на регистрацию: https://forms.gle/TRcedQMV8pH7Dgmx5
#GEW2023
🌟Знакомьтесь со спикерами 3-дня Global Entrepreneurship Week
Сессия 1
10:30-12:00
Циклическое производство и осознанное потребление
🗓️Отметьте в календаре 29 ноября
📍Место встречи: Smart Assessment
В рамках 1 сессии 3 дня, будет организована панельная дискуссия с представителями локальных специалистов, занимающихся проектами в сфере повторной переработки. Каждый из проектов уникален и направлен на сохранение окружающей среды. Если ты хочешь узнать больше о производстве экологичных продуктов и их реализации - регистрируйся на нашу панельную дискуссию!
Не упустите шанс расширить свой бизнес-круг, узнать о последних трендах и найти вдохновение для своих предпринимательских начинаний.💡
Ссылка для регистрации
#ziyoforum#gew2023
🚀 Join Us for Global Entrepreneurship Week!
📅November 29, 2023
🕙10:00 AM
📍Smart Assessment
Global Entrepreneurship Week is your opportunity to connect with inspiring entrepreneurs, exchange ideas, and discuss the future of business. Join us at Ziyo Forum for engaging presentations, panel discussions, and more! Annually GEW brings together 10 million people over 160 countries 🤩
Don't miss the chance to expand your business network, learn about the latest trends, and find inspiration for your entrepreneurial endeavors.
💡Registration is open! Sign up now and be part of the global entrepreneurial community!
🔸 GEW 2023 will take place from November 27 to December 2nd of 2023
🤝Partners: TEAM University, GroundZero Coworking, the Embassy of Switzerland in Uzbekistan and many more.
#GEW2023#Entrepreneurship#ZiyoForum