Когда разрабатываете свой 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
Инстаграм эффект в действии:
Первая фотка: Я-молодец в соцсетях.
Вторая фотка: то что было до уборки, и осталось за кадром после 10 минут разгребания и протирания.
Не забывайте что красивые люди из интернета тоже пукают :)
#inmyhead@cogload
👆Этот пост у меня родился из схемы по мотивам теории «Поток — психология оптимального переживания»
Книжку я не читал если что 🌚
Модель очень элегантная: из пограничных состояний лучше двигаться в сторону потока, где все весело и складно.
Стало скучно — увеличивай сложность (2-4) или качай другой навык (2-1)
Стало страшно — упрощай задачу (3-1) - дели на мелкие подзадачи, проси помощи. Либо качай навык (3-4)
🎤Ссылки на утро — второй канал
⏲«Бесплатно ускорить YouTube»
#inmyhead
Вот кстати очередная итерация рабочего места: с планшетом вместо мыши.
Во всей неприглядности беспорядка проводов)
Неидеально, да. Но тут я руководствуюсь принципом:
«Улучшай в себе что-то на 1% каждый день, и через год станешь лучше в 37 раз».
#inmyhead
Моя система рефлексии, чтобы понимать вещи про себя
Я пользуюсь Obsidian. Каждый день из шаблона создается заметка с такой структурой:
• Чеклист рутинных задач
Утренние процедуры, чем завтракал, ежедневные привычки
Потом идут три пустых раздела:
• Сделал
Все законченные задачки, даже бытовая мелочь, вроде: «☑️ повесил сетку от комаров»
• Научился
Мысли из подкастов, каналов и других мест. Когда узнал что-то достойное базы знаний — создаю вики-заметку.
• Думал
Мои мысли или старые заметки из базы знаний, которые я дополнил или обновил
В конце дня у меня стоит будильник «итоги дня за две минуты» — в голове прокручиваю что сегодня было, что заметил, быстро дополняю разделы.
Если ничего нет или некогда — это ок. Перестал гнобить себя, когда нечего добавить или не хочется делать. Но минимальное действие в 2 минуты очень помогает.
В конце месяца получается 5-10 интересных или ценных записей. В конце года (!) 120 — это целый отчет на пять экранов.
Причем заметки в Obsidian я веду уже второй год, но это реально начало работать, только когда в календаре поставил себе напоминалку для рефлексии в конце месяца
Если вы не гик и не хотите ничего настраивать — попробуйте Logseq — там похожая система работает из коробки.
Все бесплатно, без смс :)
Кстати, я до этого писал про свою еще более сложную систему в Obsidian. Как обычно сложные вещи не приживаются, если речь идет про внимание.
#ToolReview#inmyhead
Чем всё закончилось: модель культурных различий и стилей управления Эрин Мейер
Контекст в общении. Измеряет предпочтение к низкому или высокому контексту: в США, Германии и Нидерландах коммуникация точная и явная, все повторятся и закрепляется по нескольку раз, чтобы избежать непониманий. В Китае, Индии и Японии — сложная и подразумевающая «чтение между строк».
Оценки. Измеряет степень прямоты критики: американцы и французы дают обратную связь прямо, как есть. А японцы и китайцы дизбегают прямолинейности через обтекаемые формулировки.
Стиль лидерства. Определяет отношение к власти: в Скандинавии и Израиле отношения эгалитарные - стараются учесть интересы всех. А в Китае, России и Нигерии свойственно искать иерархическую структуру с фигурой лидера наверху
Принятие решений. Исследует процесс принятия решений: в Японии и Германии решения часто принимаются на основе консенсуса, тогда как в Китае и США решения чаще спускаются сверху-вниз
Доверие. Определяет, на чем строится доверие: в США, Германии и Великобритании доверие основывается на успешной совместной работе, а в Бразилии, Китае и Индии — на личных отношениях и взаимной симпатии.
Выражение несогласия. Измеряет отношение к конфликтам: немцы и голландцы охотно идут на открытые споры, а японцы и индонезийцы стараются избегать конфликта и дают обратную связь неявно для поддержания гармонии.
Планирование. Определяет отношение ко времени: в Германии, США и Швейцарии графики соблюдаются строго, а в Италии, Бразилии и Индии они воспринимаются гибко и как рекомендация.
Убеждение. Показывает предпочтение к дедуктивной или индуктивной аргументации: немцы и французы начинают с деталей и фактов, а американцы и британцы — с применимых выводов и рекомендаций.
Пройти тест по этим шкалам, чтобы посмотреть где находишься можно на сайте Harvard Business Review
https://hbr.org/2014/08/whats-your-cultural-profile
🎤Ссылки на утро — второй канал
⏲«Бесплатно ускорить YouTube»
#inmyhead#опыт
Гугловская нейросеть Gemini тоже научилась подхалимству
В конце апреля разработчикам ChatGPT пришлось откатить обновление нейросети 4o, потому что она слишком лебезила и хвалила пользователей по всяким пустякам.
Сегодня я такое заметил у гугловской Gemini: на обычное предложение использовать другой подход, нейронка назвала моё предложение ГЕНИАЛЬНЫМ!!1!
ну-просто-шедевр.gif
Ощущение очень неприятное — сразу начал думать, «А в чем еще оно мне льстит, но я этого уже не замечаю?»
Я про такое отношение с прищуром
🤔 упоминал в своем выступлении про то чем могут быть полезны нейронки, но как будто с каждым днем отлавливать такое становиться сложнее
🎤Ссылки на утро — второй канал
⏲YouTube за звезду (VPN за 2 ₽)
#нейронка@cogload#inmyhead@cogload
Сейчас активно работаю над тем, чтобы делать вовремя и не нарушать обещания. Такой пост — способ закрепить идею у себя в голове — буквально, «расскажи другим, чтобы понять самому».
Да, рекурсия с ссылкой на этот канал теперь будет и в следующих репостах тоже 🗿
Я пока не придумал как решить эту проблему — те, кто подписан и на Явно и на когнитивную нагрузку, будут видеть тот же пост два раза, ещё и с ссылкой на сам себя.
Если есть предложения как это элегантно решить — пишите.
#inmyhead#Дизайн