В фреймворке 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
С самым нежным днем 🌹
Сегодня, я хочу поздравить вас с международным Днём матери!👩🍼
Этот праздник, по праву можно назвать праздником вечности. 🙌
Ведь этот прекрасный и нежный образ мамы, каждый из нас проносит через всю свою жизнь. 🙌Какими бы мы ни были взрослыми и самостоятельными, нам всем порой хочется обнять маму. 🫂Ощутить объятия теплых заботливых рук и услышать слова поддержки.
Хочу поздравить каждую мамочку и сказать спасибо за тот колоссальный труд и неисчерпаемую любовь. ♥️
За терпение и бессонные ночи. Просто спасибо, что вы есть. 🤗
Берегите мам, и не забывайте говорить о том, как сильно вы их любите. И не только по праздникам. 💞
#деньматери#междунароныйденьматери#мама#мамасыночка#мамадочки#motherday#mother#happymothersday