В фреймворке 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
🪖#Helmet#IconPack
Limited Time SALE 🎉
📲 Codes
E4YBBY6ELT3LUK09HSJERLJ
HQSKGFSJC5AWU45XEFJAVQC
WLQ22Q7466BM45WMMQFPTCT
47U6GG5SLB2TA9EG9SU4K0U
74Y7G860297AM97LH10T32N
🖥Download Here
⭐️Rate & Review to support me!
🪖#Helmet#Helldivers#IconPack
It's on SALE 🎉
📲 Codes
PN1MXP2PANMCGAJRYE2BLYK
L1KWS91EAP5LWMY3VZ3P0DA
09WKFGJ51CU8XTAA0S2M8RY
66WN1F10NDFX2G7BEWCYPL5
JVTNJJ2USGVBAJNEN736T4E
🖥Download Here
⭐️Rate & Review to support me!
🪖#Helmet#Helldivers#IconPack
It's on SALE 🎉
📲 Codes
YJQH5YMKX1WE1M9EDJ5FZV9
LJNRER0NT56J6VBWVQDR8SY
W5XBZT44DAS17G9XXCR26UX
GWVLVDLJPEJ9CZ0TZAVF356
H6RVQEKUCJQHFTECS99V6KP
🖥Download Here
⭐️Rate & Review to support me!
🪖#Helmet#Helldivers#IconPack
It's on SALE 🎉
📲 Codes
4ELMQ3UXM2W29ZB5M6TC8EB
DBUU4NC7ZCXVK5G8YYLETAL
KN2LQNLMWH1BZB45C4VJGE9
HQQ79455HB6TK1TT0R683Q0
S0CHQN0GPNRGHH8LFRD5DT0
🖥Download Here
⭐️Rate & Review to support development!