Когда разрабатываете свой 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
#CABI#тестовыйдоступ
РЦНИ информирует о том, что с 23 сентября по 22 ноября 2024 года открыт тестовый доступ к коллекции баз данных компании CAB International (CABI).
Подробная информация о ресурсе и порядок доступа опубликованы на сайте Национальная подписка.
Изображение от sergiorojoes на Freepik
#CABI#тестовыйдоступ
РЦНИ информирует о том, что до 13 сентября 2024 года открыт прием заявок на участие в тестовом доступе к коллекции баз данных компании CAB International (CABI).
Даты проведения тестового доступа с 23 сентября по 22 ноября 2024 года.
Подробная информация о ресурсе и форма заявки на участие в тестовом доступе доступны на сайте Национальная подписка.
Изображение от sergiorojoes на Freepik
#CABI#семинар#вебинар#тестовыйдоступ
Сегодня, 1 октября 2024 года, на площадке Центральной научной библиотеки имени Н.И. Железнова пройдет научный семинар, организованный совместно Отделом централизованной подписки Российского центра научной информации, ФГБОУ ВО «Российский государственный аграрный университет – МСХА имени К.А.Тимирязева» и компанией ООО «Дейтабейс100К20».
Приглашаем присоединиться к трансляции, которая начнется в 10:00 (мск).
Программа семинара доступна по ссылке.
Будем рады видеть Вас в числе участников семинара!
#CABI#семинар#вебинар#тестовыйдоступ
Отдел централизованной подписки ФГБУ «Российский центр научной информации», ФГБОУ ВО «Российский государственный аграрный университет – МСХА имени К.А.Тимирязева» и компания ООО «Дейтабейс100К20» приглашают принять участие в научном семинаре «CABI Digital Library – ключевой ресурс в области сельского хозяйства, окружающей среды и прикладных наук о жизни».
Семинар организован для поддержки тестового доступа, проводимого в рамках централизованной (национальной) подписки к коллекции баз данных компании CABI.
В работе семинара примут участие представители компаний CABI и Дейтабейс100К20, сотрудники Отдела централизованной подписки РЦНИ и Центральной научной библиотеки имени Н.И. Железнова, специалисты и преподаватели университета РГАУ-МСХА имени К.А. Тимирязева.
Дата проведения семинара: 1 октября 2024 года в 10:00 (мск)
Место проведения: ЦНБ имени Н.И. Железнова, РГАУ-МСХА имени К.А. Тимирязева
Программа семинара и форма регистрации доступны на сайте Национальная подписка.
#CABI#ЦНСХБ#семинар#вебинар#тестовый доступ
ФГБУ «Российский центр научной информации», ФГБНУ «Центральная научная сельскохозяйственная библиотека» и компания ООО «Дейтабейс100К20» приглашают принять участие в практико-ориентированном семинаре по ресурсу CABI Digital Library для сельскохозяйственных научных библиотек, аграрных научных и образовательных организаций.
Семинар организован для поддержки тестового доступа, проводимого в рамках централизованной (национальной) подписки к коллекции баз данных компании CABI.
В работе семинара примут участие представители компаний CABI и Дейтабейс100К20, сотрудники Отдела централизованной подписки РЦНИ и Центральной научной сельскохозяйственной библиотеки.
Дата проведения семинара: 8 октября 2024 года в 12:00 (мск).
Семинар пройдет в формате онлайн-трансляции.
Программа семинара и форма регистрации доступны по ссылке.
Будем рады видеть Вас в числе участников семинара!
#CABI#CEPIEC#CNKI#Questel#Orbit#SAGE#тестовыйдоступ
Российский центр научной информации напоминает, что продолжается приём заявок на участие в тестовом доступе к научным информационным ресурсам в рамках централизованной (национальной) подписки.
По ссылкам, приведенным ниже можно ознакомиться с описанием каждого ресурса и заполнить форму заявки для включения организации в перечень участников тестового доступа.
Электронные ресурсы в области сельского хозяйства и наук о жизни, социальных, общественных и естественных наук (приём заявок – до 13 сентября 2024 года):
⚫️CABI. Коллекция баз данных – содержит научную информацию в области сельскохозяйственных наук и наук о жизни.
⚫️CEPIEC. Коллекция полнотекстовых баз данных – в базе собраны исследования аналитических центров, научные и статистические данные способствующие изучению и пониманию современного Китая.
⚫️CNKI. Коллекция полнотекстовых баз данных – включает в себя публикации китайских и зарубежных академических периодических изданий, докторские и магистерские диссертаций, а также издания университетов и научно-исследовательских институтов.
Электронные ресурсы в области химии, машиностроения и инженерных наук (приём заявок – до 20 сентября 2024 года):
⚫️Questel. Ресурс Orbit Chemistry module – модуль, интегрированный в платформу Orbit Intelligence, предназначенный для поиска молекул в более чем 75 миллионах патентных документах.
⚫️SAGE Publications. Полнотекстовая коллекция журналов IMechE Journal Collection – коллекция журналов, охватывающая широкий спектр областей машиностроения и инженерных наук.
Image by tippapatt from Adobe Stock