В фреймворке 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
#партнерскийпост
⚡️28 Вт и 29 Ср октября 2025 — юбилейный 15-й Blockchain Life 2025 в Дубае – ТОП причин быть:
1️⃣ 15 000+ участников, мощный нетворкинг с инсайтами, которые не найти в Telegram
2️⃣ Буллран и альтсезон уже близко — ты узнаешь что сделать, чтобы заработать максимум
3️⃣ О трендах, которые станут мейнстримом через полгода, расскажут главные фигуры крипты с синхронным переводом на русский язык
4️⃣Самый большой форум в истории – 3 сцены, международный нетворкинг и огромная уличная зона с активностями
5️⃣ легендарная AfterParty: пока непонятно, кого привезут выступать в этот раз, но среди артистов уже были Тимати, Алан Уолкер и Френч Монтана; мб Канье Уэст?
6️⃣ Не просто форум — целая Blockchain Life Week: яхты, митапы, вечеринки, нетворкинг
🎟 10% OFF для участников ⚡️@iGlobalChat по промокоду iGlobalBlockchain25 на официальном сайте blockchain-life.com
#BlockchainLife2025#Dubai#Crypto#Web3#биткоин#альткоины#крипто#блокчейн#Bullrun2025#Altseason#CryptoGems#CryptoAlpha#CryptoWhale#AlphaLeak#инсайды