В фреймворке 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
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
❎ Famous Characters (Caption) ❎
https://telegram.me/addstickers/famousCharactersCaption
#Famous#Characters#Caption#Unofficial
▶️ more Stickers at S4T.tv
👍 Epic Thumbs Up 👍
https://telegram.me/addstickers/EpicThumbsUp
🇪🇸 La Cosa memes https://telegram.me/addstickers/lacosarock
#ThumbsUp#Like#Famous#Stickers#Español#LaCosa
↘️ + Stickers at S4T.tv
❎ Famous Characters ❎
https://telegram.me/addstickers/stickerstelegram
❗️A United Nations panel considering whether Julian Assange has been detained arbitrarily after spending years in the Ecuadorian embassy in London has ruled in his favour, it has been confirmed💪
#Julian#Assange#Famous#Characters#S4Dynamics#Pack
↘️more Stickers at S4T.tv