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

Резултати

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

Пребарај: #bsky

当前筛选 #bsky清除筛选
耕读频道

@iGengdu · Post #633 · 27.11.2024 г., 04:44

#Bluesky#bsky#蓝天#推荐#分享 1.世间万象,纷繁复杂,很多东西都很难被人所理解。 2.然则,面对诸多的不确定性,人们总是试图用理性来寻求一种确定性。 3.或许,这种确定性是有效的、暂时的;然则,这却不能阻止人们追求确定性和可靠性。 4.当然,人的理性,总是有限的;自卑或过度自信都不太适宜。敬畏自然和宇宙,或许是一种比较适宜的态度。 5.以上源自我的蓝天账号置顶消息。有蓝天账号的朋友,可以关注下耕读的蓝天账号: https://bsky.igengdu.com/ 6. 耕读注册了域名 cnbsky.com | bskycn.com ,目前都会直接跳转到耕读博客。 📢频道✈️群组 (耕读)📬投稿