В фреймворке 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
@bjrobot
Qué puede hacer este bot?
Juega Negro Jack en este bot. Las tarjetas se muestran como pegatinas para una gran interfaz de usuario
Idioma: Inglés, Ruso
(visto en @BotsGram_cu)
#blackjack, #game, #sticker, #play
«Я в основном играю таких суровых парней в боевиках. Может быть, это потому, что я в жизни нежный и романтичный. Я не люблю драться, не люблю влипать в неприятности, и поэтому мне интересно играть свою противоположность в кино».
Сегодня Дольфу Лундгрену исполнилось 68 лет.
#ВИДЕОТЕКА
#DolphLundgren
#RockyIV
#ThePunisher
#ShowdownInLittleTokyo
#UniversalSoldier
#MenOfWar
#JohnnyMnemonic
#Blackjack
#TheExpendables2
#Creed2
#Aquaman