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

Резултати

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

Пребарај: #pasirris

当前筛选 #pasirris清除筛选
SG MRT Updates

@sgmrt · Post #2325 · 23.04.2025 г., 00:09

[EWL] UPDATE: Please add 10 mins train travel time between #Tampines and #PasirRis, in both directions due to track point fault. Free regular bus and shuttle train services are available between #Tampines and #PasirRis. Normal train service is available for the rest of East West - SMRT

SG MRT Updates

@sgmrt · Post #2324 · 22.04.2025 г., 23:44

[EWL] UPDATE: Please add 10 mins train travel time between #Tampines and #PasirRis, in both directions due to track point fault. Free regular bus services are available between #Tampines and #PasirRis. Shuttle train service is also available between #Tampines and #PasirRis. Train - SMRT

SG MRT Updates

@sgmrt · Post #2323 · 22.04.2025 г., 23:29

[EWL]: Pls add an additional 10 mins of travelling time between #Tampines and #PasirRis. The eastbound train will turn around at #Tampines towards westbound. Free regular bus services are available between #Tampines and #PasirRis. Shuttle train service is also available between - SMRT

SG MRT Updates

@sgmrt · Post #2322 · 22.04.2025 г., 23:29

[EWL]: Pls add an additional 10 mins of travelling time between #Tampines and #PasirRis. The eastbound train will turn around at #Tampines towards westbound. Free regular bus services are available between #Tampines and #PasirRis. Shuttle train service is also available between https://bit.ly/4jEYkYR - SMRT

SG MRT Updates

@sgmrt · Post #2321 · 22.04.2025 г., 23:24

[EWL] UPDATE: Train svc is available btwn #Tampines and #PasirRis. Please add 10 mins train travel time from Tampines to Pasir Ris, towards Pasir Ris due to track point fault. Free regular bus service is available between Tampines and Pasir Ris. - SMRT

12
ПретходнаСтраница 1 од 2Следна