В фреймворке 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
How to verify and receive your roles
🔹 Log in at http://buidlpad.com
🔹 Link your Discord under your Profile
🔹 Join the Buidlpad Discord: http://discord.gg/buidlpad
🔹 Verify yourself in #buidler-verify
🔹 Select your region in #select-region
That’s it. Your verification is complete 💙
Or follow this tutorial ⬇️ Or DM : @gBuidl
Java VS C#
Dastur tuzuvchi sifatida kelajagingizni aks ettira boshlaganingizda, ya’ni dasturlashni o’rganayotganingizda sizga bu juda qiyin savol bo’lish mumkin, qaysi biridan boshlaganim ma’qul? Har qanday tilni o’rganish uchun juda ko’p kuch, vaqt va sabr kerak bo’ladi (to’g’risini aytgan yaxshida).
👉Batafsil
👨🏫 Mentor: Suxrob Xayitmurodov
#csharp#java#compare#select
.NET Uzbekistan Community
__________
Telegram | Instagram | Youtube
C# Tarixi
Ushbu maqolamizda sizlarga C# dasturlash tili tarixi haqida qisqacha ma’lumot berishga harakat qilamiz. Agarda siz dasturlash olamida yangi va nimadan boshlashi bilmay turgan bo’lsangiz, ushbu kamtargina maqolachamiz aynan siz uchun.
👉Batafsil
👨🏫 Mentor: Suxrob Xayitmurodov
#csharp#history#famous#select
.NET Uzbekistan Community
__________
Telegram | Instagram | Youtube