В фреймворке 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
@BTClayer2#BEVM First Inscriptions Start Soon #BEVM $BEVM
How To Get BEVM Bitcoin..?
1) Go To: http://app.omnibtc.finance/swap
- Connect New Wallet
- Bridge ARB ETH To BEVM BTC
2) Add RPC: https://chainlist.org/chain/1501
🆕Bevscriptions now fully supports #TokenPocket login! BM20_BTClayer2
✅Bevscriptions is the first inscription platform on BTC L2 - BTClayer2, which created on the #BEVM network now and will be built on more BTC Layer2 networks later.
🔥You can access Bevscriptions with your #TokenPocket wallet. (Both Mobile Wallet and Chrome Extension)
👉https://www.tokenpocket.pro/
👉https://www.bevscriptions.com/
【Details】https://twitter.com/TokenPocket_TP/status/1752292278125949209
【Powered By】Crypto Box
🆕 BEVM is now live on TokenPocket. BTClayer2
🔥BEVM is the first fully decentralized EVM-compatible Bitcoin L2 built on #Taproot, using #BTC as gas. It allows all DApps that can run in the ethereum ecosystem to run on #Bitcoin L2.
🚀How to create/import a #BEVM wallet on #TokenPocket Mobile Wallet and Chrome Extension Wallet?
Guide👉https://help.tokenpocket.pro/en/wallet-operation/how-to-create-a-wallet/bevm
Download #TokenPocket
👉https://www.tokenpocket.pro/
👉https://extension.tokenpocket.pro/
#Bitcoin#TokenPocket#Layer2
【Details】https://twitter.com/TokenPocket_TP/status/1738379442853146866
【Powered By】Crypto Box