TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #62 · 4 апр.

Когда разрабатываете свой 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

Hashtags

Резултати

Пронајдени 6 слични објави

Пребарај: #playoffs

当前筛选 #playoffs清除筛选

🔵 Yoshinobu Yamamoto de los Dodgers es el primer lanzador en la historia en ganar 3 juegos como visitante en una sola Serie Mundial. 🤯 También es el primero en ganar los Juegos 6 y 7 de una Serie Mundial como visitante. 📰 Vía Opta STATS #️⃣#PlayOffs#Yamamoto#Stats#MLBHistory 🗞 | t.me/MLB_Daily

🏆⚽️African Football Tournament — Finals this Saturday, July 26! 📍Stadium, 54 Pavla Shamanova Street 🕓Match Schedule: 🥉 3rd Place Match: 🇸🇳 Senegal vs 🇬🇼 Guinea-Bissau — 3:00 PM–4:00 PM ⚽️ Women's Match: "Black Panthers" 🐾 vs "African Lionesses"🦁 — 4:20 PM–5:00 PM 🏆Men's Final: 🇬🇳 Guinea vs 🇲🇱 Mali — 5:10 PM–6:30 PM 🥇🥈🥉Award Ceremony: 6:50 PM 💃 African dance performances during the breaks! 🌍🇿🇦 The Office of the Honorary Consul of South Africa proudly supports the vibrant African community in Yekaterinburg! 📣🥁 Come cheer for the teams! It’s going to be 🔥 hot and full of African spirit! ⚠️Important: There are no bleachers at this school stadium — please bring a blanket, mat, or a folding chair to sit on. #Africa#Football#Playoffs#Yekaterinburg#AfricanDiaspora#SouthAfrica#Ural#SportWithoutBorders

🏆⚽️ The African Football Tournament is heading into the playoffs! Quarterfinals kick off this Saturday — July 19! 📍Stadium, 24 Pavla Shamanova St. Match schedule: 🇹🇬Togo vs 🇬🇼Guinea-Bissau — 5:00 PM 🇬🇳Guinea vs 🇨🇮Côte d’Ivoire — 5:50 PM 🇲🇱Mali vs 🇨🇲Cameroon — 6:40 PM 🇸🇳Senegal vs 🇳🇬Nigeria — 7:30 PM ⚡️ Semifinals will take place Sunday, July 20! 📍Stadium, 37B Volgogradskaya St. 🌍🇿🇦 The Office of the Honorary Consul of South Africa proudly supports the vibrant and united African community in Yekaterinburg! 📣🥁Come out and cheer for your favorite team! Expect high energy, great vibes, and true African spirit on and off the field! 🔥🌍 #Africa#Football#Playoffs#Tournament#Yekaterinburg#AfricanDiaspora#SouthAfrica#Ural#SportWithoutBorders

🏆⚽️ African Football Tournament — Semifinals Today, July 20! 📍Stadium: Volgogradskaya Street, 37B 🕓 Match Schedule: 🇬🇼Guinea-Bissau vs 🇬🇳Guinea — 4:00 PM 🇲🇱Mali vs 🇸🇳Senegal — 5:30 PM 🌍🇿🇦 The Office of the Honorary Consul of South Africa proudly supports the vibrant and united African community of Yekaterinburg! 📣🥁Come cheer for the teams! It’s going to be blazing hot with African spirit! 🔥 #Africa#Football#Playoffs#Tournament#Yekaterinburg#AfricanDiaspora#SouthAfrica#Urals#SportsWithoutBorders