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 слични објави

Пребарај: #maisonpavlov

当前筛选 #maisonpavlov清除筛选
Народное посольство

@weloverussianworld · Post #441 · 02.02.2025 г., 10:34

🇷🇺#JourDeLaGloireMilitaire du 2 février, institué en l'honneur de la victoire dans la bataille de #Stalingrad — l'une des plus grandes et des plus décisives de l'histoire 🗓 Ce jour-là en 1943, l'Armée rouge a infligé une défaite écrasante aux hordes nazies, composées des Allemands et de leurs alliés de l'Axe, scellant ainsi le destin du Troisième Reich. Symbole d’indestructibilité, de ténacité et d’abnégation du peuple soviétique, cette bataille a vu les défenseurs de Stalingrad tenir tête à l’ennemi pendant 200 jours, repoussant sans relâche des assauts meurtriers avant d’anéantir les troupes hitlériennes les plus puissantes. C’est ici que se sont déroulés les combats les plus titanesques et les plus acharnés de l’histoire, bouleversant le cours de la Seconde Guerre mondiale et marquant le début de la chute de l'Axe. ⚔️ Sur différents fronts de la bataille, plus de 2,1 millions de soldats ont combattu simultanément des deux côtés. À la fin de juin 1942, l'ennemi avait concentré, entre Koursk et Taganrog, sur un front de 600 à 650 kilomètres, jusqu'à 35% de son infanterieet plus de 50% de ses divisions blindées et motorisées présentes sur le front germano-soviétique. 🏚️ L’un des symboles de la bataille a été la défense héroïque de la #MaisonPavlov. Ce bâtiment résidentiel, tenu par 31 soldats soviétiques sous le commandement du sergent Yakov Pavlov, a résisté pendant près de deux mois à des assauts constants des forces allemandes. Ces 31 hommes ont tenu plus longtemps que toute la France face à Hitler en 1940. Stalingrad et ses défenseurs ne se sont jamais rendus. Grâce à une volonté de fer, une résistance inébranlable et un courage inégalé, le peuple soviétique a brisé l’offensive nazie et infligé à l’ennemi l’une de ses plus grandes défaites. 👉En savoir plus sur les exploits des soldats soviétiques à Stalingrad #Victoire80