В фреймворке 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
🔥Free Mint – Heartscape NFT on Monad ✅
💠Claim your dreamy, emotion-filled Heartscape NFT for FREE on the Monad Network – a cascade of violet vibes & floating hearts awaits
☀️Mint Link :- Click Here
⚙️How to Mint ?
♦️Like & Retweet Morkie’sPost on X
♦️Join the Morkie Discord account
♦️Check your Web3 ID
♦️Mint your NFT on the website
🖼Heartscape is an ethereal, emotional NFT that captures deep feelings through beautiful art, violet hues, and floating heart visuals.
💎A must-have collectible for NFT lovers and emotional art fans
📌Limited-time mint – don't miss the magic
®Note - Please do your own research (DYOR) before joining to any airdrops project, also airdrop is 100% free. Don't send any fee or penny for receiving airdrop tokens required
#MonadNFT#Heartscape#FreeMint#Airdropcomic#NFTdrop#CryptoArt