Когда разрабатываете свой 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
💥Madrid en octubre💥
✈️Desde Sevilla 51€: 25 al 28 oct
✈️Desde Mallorca 24€: 25 al 30 oct
✈️Desde Santiago 56€: 19 al 23 oct
✈️Desde Asturias 56€: 28 al 30 oct
Vuelos con salida desde #Sevilla, #Mallorca, #Santiago y #Asturias
Más en:https://t.me/chollosdevuelos✅
El que no corre 🏃 vuela 🛫
👨💻Regulación del teletrabajo en la C.A. de Asturias mediante Decreto 9/2023, de 3 de febrero, por el que se regula el teletrabajo como modalidad de prestación de servicios a distancia en la Administración del Principado de Asturias
#funcionpublica#Asturias
https://blogdejoselopezvinyaaldia.com/2023/02/26/funcion-publica-regulacion-del-teletrabajo-en-la-admon-del-principado-de-asturias/
💥Sevilla en septiembre💥
✈️Desde Asturias 66€: 10 al 14 sept
✈️Desde Lanzarote 79€: 26 al 29 sept
✈️Desde Mallorca 59€: 19 al 22 sept
✈️Desde Madrid 77€: 7 al 11 sept
✈️Desde Barcelona 43€: 18 al 21 sept
✈️Desde Valencia 52€: 16 al 19 sept
✈️Desde Santander 41€: 17 al 20 sept
🏨Alojamiento en Sevilla🏨
Vuelos con salida desde #Asturias, #Lanzarote, #Mallorca, #Madrid, #Barcelona, #Valencia y #Santander
Más en:https://t.me/chollosdevuelos✅
El que no corre 🏃 vuela 🛫
💥Madrid en marzo💥
✈️Desde Lanzarote 31€: 21 al 27 marzo
✈️Desde Santiago 34€: 13 al 18 marzo
✈️Desde Mallorca 17€: 23 al 27 marzo
✈️Desde Asturias 56€: 9 al 12 marzo
✈️Desde Santander 51€: 20 al 23 marzo
✈️Desde Malaga 59€: 20 al 24 marzo
Vuelos con salida desde #Lanzarote, #Santiago, #Mallorca, #Asturias, #Santander y #Malaga
Más en:https://t.me/chollosdevuelos✅
El que no corre 🏃 vuela 🛫
💥Puente Hispanidad en Barcelona💥
✈️Desde Mallorca 31€: 11 al 14 oct
✈️Desde Santiago 48€: 11 al 14 oct
✈️Desde Sevilla 48€: 11 al 14 oct
✈️Desde Asturias 50€: 11 al 14 oct
✈️Desde Malaga 53€: 11 al 14 oct
✈️Desde Bilbao 58€: 11 al 14 oct
🏨Alojamiento en Barcelona🏨
Vuelos con salida desde #Mallorca, #Santiago, #Sevilla, #Asturias, #Malaga y #Bilbao
Más en:https://t.me/chollosdevuelos✅
El que no corre 🏃 vuela 🛫
✋🏻 Adiós al monumento a los Héroes del Simancas en Gijón: se retirará en un plazo de cuatro meses#Asturias#PSOE#MemoriaHistórica
◾ La Compañía de Jesús, propietaria del Colegio de la Inmaculada de Gijón, tiene cuatro meses para retirar el monumento de los 'Héroes del Simancas' de su fachada, tal y como recoge la resolución emitida ayer por el Principado, que pone fin al procedimiento iniciado el pasado 9 de febrero, después de que el primero caducara en noviembre por no resolverse en los plazos legales, lo que ocasionó duras críticas de las organizaciones memorialistas, entre ellas la Federación Asturiana Memoria y República (FAMYR), impulsora de este expediente.
◾ Por su parte, la Compañía de Jesús, a la que «se ordena la retirada de los símbolos de exaltación del franquismo que como monumento inaugurado el 21 de octubre de 1958 se encuentra adosado a la fachada del colegio», interpondrá recurso de reposición. También cabe recurso contencioso-administrativo ante el Tribunal Superior de Justicia de Asturias en el plazo de dos meses.
https://www.elcomercio.es/gijon/retirada-monumento-simancas-colegio-inmaculada-20260505131143-nt.html
🇪🇸t.me/info288_nacional
💥Malaga en Septiembre💥
✈️Desde Tenerife 70€: 21 al 26 sept
✈️Desde Madrid 60€: 19 al 22 sept
✈️Desde Santiago 59€: 22 al 25 sept
✈️Desde Asturias 55€: 14 al 18 sept
✈️Desde Barcelona 44€: 26 al 29 sept
✈️Desde Bilbao 34€: 14 al 19 sept
🏨Alojamiento en Malaga🏨
Vuelos con salida desde #Tenerife, #Madrid, #Santiago, #Asturias, #Barcelona y #Bilbao
Más en:https://t.me/chollosdevuelos✅
El que no corre 🏃 vuela 🛫
💥Madrid en enero💥
✈️Desde Ibiza 22€: 25 al 27 enero
✈️Desde Santiago 37€: 28 al 31 enero
✈️Desde Gran Canaria 35€: 19 al 22 enero
✈️Desde Sevilla 44€: 14 al 17 enero
✈️Desde Asturias 49€: 24 al 28 enero
✈️Desde Jerez 49€: 19 al 22 enero
✈️Desde La Coruña 52€: 17 al 21 enero
✈️Desde Malaga 53€: 18 al 20 enero
Vuelos con salida desde #Ibiza, #Santiago, #GranCanaria, #Sevilla, #Asturias, #Jerez, #LaCoruña y #Malaga
Más en:https://t.me/chollosdevuelos✅
El que no corre 🏃 vuela 🛫