В фреймворке 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
🎉 Sing and Earn is LIVE! 💸✨
Earn Singing Tickets by completing actions and unlock rewards in the Vault! Here's how:
1️⃣ Perform at least one action:
✅Buy $KARA
✅Lucky Spin
✅Supreme Spin
✅Wallet Check-in
2️⃣ Go to Vault ➡️ Items ➡️ Open your Singing Ticket 🎟
Start earning CASH today! 🚀
#SingAndEarn#SingSing
🎤Announcement | Chat | X (Twitter) | Website | Game
🎤 Sing and Earn Cash WILL GO LIVE today! 💸✨
Every action earns you a singing ticket, bringing you closer to CASH rewards! 🎶🔥
📜 Details:
🪙 KARA purchase in the shop = 1 Singing Ticket
💳1 Wallet Check-in = 1 Singing Ticket
💫1 Lucky Spin = 1 Singing Ticket
🎟 Collect tickets and claim CASH effortlessly. Ready to sing and win? 🚀
#SingAndEarn#SingSing
🎤Announcement | Chat | X (Twitter) | Website | Game
🎤Exciting news for all SingSingers who love to sing!🎶
Soon, you'll be able to turn your voice into rewards in SingSing's Tycoon game.
Use your talent to earn Cash while enjoying a fun and engaging singing experience! 💰🎵
Get ready to showcase your voice, compete, and claim exciting rewards. This is your chance to sing your way to success! 🌟
Stay tuned for more details. Let the music lead the way!
#SingSing#Web3Gaming#PlayToEarn#SingAndEarn