@sgmrt · Post #2473 · 01.09.2025 г., 01:19
[CCL] UPDATE: Train services between #Promenade and #MarinaBay have resumed their scheduled operations. Free regular bus services have ceased. - SMRT
Hashtags
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
Пребарај: #promenade
@sgmrt · Post #2473 · 01.09.2025 г., 01:19
[CCL] UPDATE: Train services between #Promenade and #MarinaBay have resumed their scheduled operations. Free regular bus services have ceased. - SMRT
Hashtags
@sgmrt · Post #2472 · 01.09.2025 г., 01:14
[CCL] UPDATE: Train services are progressively resuming their scheduled service between #Promenade and #MarinaBay. - SMRT
Hashtags
@sgmrt · Post #2471 · 01.09.2025 г., 01:04
[CCL] UPDATE: Due to a train fault, train service is expected to recover its scheduled service in 15 minutes between #Promenade and #MarinaBay. We apologise for any inconvenience caused. Please approach our station staff if you need further assistance. - SMRT
Hashtags
@sgmrt · Post #2470 · 01.09.2025 г., 00:54
[CCL] Update: Free regular bus services are available between #Promenade and #MarinaBay. You may download an e-Travel Chit as proof of your travel at https://bit.ly/39HsrAl if your journey has been affected. - SMRT
Hashtags
@sgmrt · Post #2468 · 01.09.2025 г., 00:49
[CCL]: Due to a train fault, there is no train service between #MarinaBay and #Promenade. Free regular bus services are available between #MarinaBay and #Promenade. https://bit.ly/3JHKRD2 - SMRT
Hashtags
@sgmrt · Post #1468 · 20.06.2022 г., 05:58
[CCL] UPDATE: Additional 10mins train travel time from #Promenade to #MarinaBay. We are working to recover service. - SMRT
Hashtags
@sgmrt · Post #2279 · 05.03.2025 г., 09:04
[CCL]: Train services have resumed to normalcy. Free regular bus services will cease between #Promenade and #Serangoon. We are sorry for affecting your commute. - SMRT
Hashtags
@sgmrt · Post #2274 · 05.03.2025 г., 08:14
[CCL]: Please add 30 mins train travel time between #Promenade and #Serangoon, in both directions due to train fault. Free regular bus service is available between #Promenade and #Serangoon. Train service is still available. - SMRT
Hashtags
@sgmrt · Post #2181 · 14.12.2024 г., 11:14
[CCL] UPDATE: Train fault cleared. Train service between #Promenade and #Serangoon is progressively returning to normal. Free regular bus service are still available between #Promenade and #Serangoon. - SMRT
Hashtags
@sgmrt · Post #2180 · 14.12.2024 г., 11:05
[CCL] UPDATE: Please add an additional 30mins train travel time between #Promenade and #Serangoon due to a train fault. Free regular bus service are available between #Promenade and #Serangoon. - SMRT
Hashtags
@sgmrt · Post #2179 · 14.12.2024 г., 10:49
[CCL] UPDATE: Additional 30mins train travel time between #Promenade and #Serangoon due to a train fault. Free regular bus service are available between #Promenade and #Serangoon. - SMRT
Hashtags
@sgmrt · Post #1424 · 01.04.2022 г., 04:26
[CCL] CLEARED: Fault cleared, trains service progressively resuming. Free regular bus and bridging bus services between #Promenade and #Serangoon are still available. - SMRT
Hashtags