Когда разрабатываете свой 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
Компания "Агромаг" Экслюзивный дилер техники ROC
ROC специализируется на выпуске только ленточных валкообразователей с 1996 года.
На сегодня самый широкий выбор моделей - 11 штук. Имеет самое большое количество Патентов
Машины ROC сконструированы, чтобы справляться с наработкой с выше 2500 часов в год!!!
#rocrus#ленточныйвалкообразователь#агромагroc@rocrus#инновации#технологии#кормозаготовка
О Преимуществах в видео ниже ⬇⬇⬇⬇⬇⬇⬇⬇⬇⬇
Солнечные дни наконец-то пришли в Северо-Запад, а это значит, что совсем скоро настанет период заготовки кормов!
Компания Агромаг в очередной раз поставляет, самую технологичную технику нашим клиентам!
Представляем вашему вниманию ленточный валкообразователь ROC RT870.
Формирование валков на данной модели можно осуществлять со всех 3-х транспортеров влево или вправо, а также возможно направить массу с двух транспортеров в одну сторону и одно в другую. У данной модели можно убрать центральный транспортер, оставив при этом центральный подборщик, и формировать валок по центру шириной 140 или 160 см. Идеальная машина для формирования валков, которые затем будут убраны рулонным пресс-подборщиком или силосоуборочным комбайном.
Важные преимущества:
🔸 Для работы с RT 870 достаточно трактора мощностью 110 л/с, который потребляет меньше топлива.
🔸RT 870 может формировать 1 большой валок без потери качества каждые 9, 18, 27, и 36 метров. При использовании силосоуборочного комбайна мощностью 300 — 400 л/с это позволяет существенно сэкономить топливо и обеспечить необходимую загрузку комбайна.
🔸Эффективная заготовка кормов при втором, третьем и последующих укосах, когда объем массы с гектара снижается.
🔸С повышением качества корма повышается качество конечной продукции.
🔸Производительность ROC выше, чем у традиционных граблей, и рабочие могут сделать ту же работу в поле быстрее, а также производительность машин работающих после валкообразователя повышается в 3 раза.
🔸Животные перестают страдать от желудочной инфекции, и ветеринарные расходы снижаются. Животные здоровее и избегают смерти от клостридиоза.
🔸Пользователи ROC отмечают, что здоровые коровы начали давать в сутки на 1 – 1,5 л молока больше, а это дополнительная прибыль.
И это далеко не все преимущества!
За подробностями обращайтесь к нашим специалистам:
Тел 89006331826
8812466840
#ROCrus#ROCRT870#ленточныйвалкообразователь#грабли#технологии#заготовкакормов#уборкатравы#Агромаг