В фреймворке PyQt (и PySide тоже) часто встречается настройка чего-либо с помощью так называемых флагов.
widget.setWindowFlags(Qt.Window)
Взаимодействие нескольких флагов делается с помощью бинарных (или побитовых) операторов.
Несколько флагов можно указать с помощью оператора "|"
list_item.setFlags(Qt.ItemIsSelectable | Qt.ItemIsEnabled)
исключить флаг из уже имеющегося набора можно так
list_item.setFlags(list_item.flags() ^ Qt.ItemIsEnabled)
Добавить новый флаг к имеющимся можно так
list_item.setFlags(list_item.flags() | Qt.ItemIsEnabled)
А проверка наличия делается так
is_enabled = item.flags() & Qt.ItemIsEnabled > 0
Почему именно так? Всё дело в том как именно работают побитовые операторы. Но об этом в следующем посте.
#qt
PMSL CSA Player Серия Мини Подкастов – #2 PREPOD
Знакомьтесь с PREPOD — одним из самых ярких игроков сезона! Узнай, какие заблуждения есть о киберспорте? Поддерживай своих фаворитов на PMSL CSA SPRING 2025!
Следи за всеми новостями на нашем сайте!
#PMSL#PMSL2025#PMSLCSA#PUBGMOBILE#PUBGMOBILEESPORTS
PMSL CSA Player Серия Мини Подкастов - #1 Team Spirit KITSUNE
Интервью с легендарным KITSUNE из Team Spirit. Как он стал киберспортсменом? Смотрите, поддерживайте и болейте за свои любимые команды на PMSL CSA SPRING 2025! Все новости на нашем сайте!
#PMSL#PMSL2025#PMSLCSA#PUBGMOBILE#PUBGMOBILEESPORTS
🎙ПРЕДСТАВЛЯЕМ КАСТЕРОВ 🏆PMSL CSA FALL! 🎙
Профессиональные комментаторы будут сопровождать все матчи 🏆PMSL CSA FALL с 10 по 15 октября.
Смотрите прямые трансляции на официальных каналах турнира и наслаждайтесь профессиональными комментариями на родном языке!
📱YOUTUBE
📱FACEBOOK
📱VK
📱Tiktok
#PUBGMOBILE#ESPORTSPUBGMOBILE#PMSL#PMSL2025#PMSLCSA#PUBGMobileSuperLeague#PUBGMobileEsports