В фреймворке 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
🔤🔤🔤🔤🔤🔤🔤
Зверополис
Zootopia
В огромном городе, где вместе живут самые разные животные, крольчиха Джуди Хоппс и хитрый лис Ник Уайлд расследуют опасное дело, которое может перевернуть Зверополис с ног на голову. Это яркая история о дружбе, доверии и том, как важно не судить по внешности.
☝️Zootopia
☝️
📌 Стикерпак создан дляканала@EmojisTG
#️⃣#Zootopia#Zootopia2
❤️Emoji |
🤩
😊Anime Arts |
🐾BOOST
🔤🔤🔤🔤🔤🔤🔤
Зверополис 2
Zootopia 2
Джуди Хоппс и Ник Уайлд возвращаются, чтобы распутать новое, опасное дело — на их пути появляется змеиный заговор и друзья должны доказать невиновность и спасти мир Зоотопии.
☝️Zootopia 2
☝️
❗️ Стикерпак создан дляканала@premium_stikers
❤️
#️⃣#Zootopia#Zootopia2
🤑Anime Arts |
❤️BOOST
❤️