Когда разрабатываете свой 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
💫Любовь — главный двигатель культуры #celebration
Из нее рождаются искусство, книги, музыка и фильмы. Она может быть музой, соавтором или привычкой встречаться взглядами через соседний офисный стол. Ко Дню всех влюбленных мы собрали валентинки с парами, без которых невозможно представить ни историю искусства, ни культуру.
Узнали в цитатах героев свою половинку, подругу, друга или коллегу? Обязательно отправляйте валентинку 🤍
ART FLASH
💫Christie’s: рассказываем о том, как моряк основал торговую лавку, ставшую культовым аукционным домом #celebration
Первыйаукцион дома Christie’s прошел 5 декабря 1766 года, ровно 259 лет назад. Лотами были вина, мебель, ювелирные изделия, но все они не представляли большой ценности. Сегодня за аукционом пристально следят из разных точек мира, а результаты продаж появляются в утренних сводках.
О том, как из маленькой лавочки Christie’s превратился в один самых влиятельным аукционных домов читайте в карточках 🤍
ART FLASH
💫25 октября — День художника#celebration
В момент, когда художник завершает работу, она начинает жить собственной жизнью — наполняется смыслами, чувствами и превращается в отражение взглядов тех, кто на нее смотрит.
Но что сами художники думают о своем творчестве? Как они его ощущают и определяют?
В честь праздника мы собрали цитаты великих мастеров о творчестве, чтобы взглянуть на искусство глазами тех, кто его создает 🤍
ART FLASH
💫21 октября — День разноцветных зонтов#celebration
Зонтик — аксессуар, который может разбавить серые осенние будни. Однако зонт не всегда защищал от дождя или ветра и скорее был символом достатка и статуса.
Мы решили вспомнить историю аксессуара и проследить, как он менялся сквозь время. В карточках читайте о том, где появился зонт и как его украшали в разных странах и эпохах.
ART FLASH
💫17 октября — День «Наденьте что-нибудь безвкусное»#celebration
У вас есть уютный, но странный рождественский свитер? Любимое платье из 2000-х? Может быть очень удобные, но некрасивые ботинки?
Сегодня тот самый день, когда наконец-то можно смело надеть любимую, но нелепую вещь из гардероба.
Праздник появился после одного из эпизодов телесериала «Трое на диване», в котором герой объявил этот праздник. В нашей подборке — образы героинь, вызвавшие у зрителей самые противоречивые реакции.
ART FLASH
💫Какая она — идеальная вечеринка? #celebration
11 октября — день праздника «Это моя вечеринка». Мы решили посмотреть, как отдыхали и развлекались известные личности и где знакомились главные деятели искусства XX века.
Роскошь и гламур прошлого столетия может ассоциироваться не только с «Великим Гэтсби» и отдыхом на семейных виллах, но еще и с искусством. В прошлом веке нетворкинг работал немного иначе — соцсетей не существовало, поэтому художники, инвесторы, продюсеры и галеристы находили друг друга на масштабных вечеринках и мероприятиях.
Судьбоносные встречи происходили за тесными столиками, а меценаты договаривались о встречах у выхода на улицу.
В карточках читайте про 5 главных вечеринок XX века.
ART FLASH
💫26 сентября — День лучшего завтрака #celebration
Про этот утренний ритуал многие забывают, пропускают из-за спешки или обходятся просто кружкой кофе.
Некоторые художники относились к завтраку как к продолжению своего творчества — и не были банальны в своих предпочтениях.
Рассказали про любимую еду некоторых из них в карточках 🤍
ART FLASH
🌟Не только текст: пять не самых очевидных работ Эрика Булатова #celebration
5 сентября — день рождения Эрика Булатова. Его имя мы привыкли связывать с большими слоганами на фоне неба и городских пространств. Однако творчество художника выходит далеко за рамки текстовых композиций.
Мы собрали подборку менее очевидных произведений Булатова — картины без надписей, где он работает с образом города, света и пространства.
ART FLASH
💫106-летие со дня рождения Федерико Феллини#celebration#movie
Феллини — один из главных авторов XX века, который превратил экран в пространство памяти и сна, где автобиография становится мифом, а реальность — частью спектакля.
В честь дня рождения режиссера мы собрали подборку его ключевых фильмов — от неореалистических истоков до поздних работ.
Любите его фильмы?
❤️ — да
💔— нет
ART FLASH
💫24 декабря — День украшения елки #celebration#fashion
Люксовые бренды ежегодно превращают новогодние елки в настоящие арт-объекты — от театральных инсталляций до минималистичных, почти музейных объектов.
Мы собрали подборку самых эффектных брендовых елок для вдохновения и праздничного настроения.
А у вас елка уже готова?
❤️ — да, пришлю фото в комментариях
💔 — еще нет, поставлю ближе к празднику
ART FLASH
💫10 сентября — день рождения Эльзы Скиапарелли#celebration#fashion
Настоящая авангардистка, она радикально изменила представление о высокой моде, зарядив ее сюрреализмом, яркими красками и духом эпатажа. Скиапарелли превращала одежду в арт-объекты, воплощая самые смелые фантазии. Сегодня ее дело продолжает модный дом Maison Schiaparelli, даря современным женщинам то самое сочетание дерзости и шарма.
Мы собрали для вас подборку вещей, которые стали популярными благодаря ей. Подробнее ー в карточках 🤍
ART FLASH
💫«Осознанно не “модный” арт-кластер» — интервью с Асей Филипповой в честь дня рождения ЦТИ «Фабрика» #creativeindustry#celebration
Как выставочный зал стал целым центром искусства? Какой путь прошел один из старейших арт-кластеров Москвы? Что ждет его в будущем?
Об этом и не только побеседовали с генеральным директором Асей Филипповой.
Полное интервью можно прочитать на нашем сайте🤍
ART FLASH