В фреймворке 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
Легкость в любых делах 💼✨
💻 Ноутбук ASUS ExpertBook B1 — идеальный помощник для корпоративных пользователей. За счет новейшего процессора Intel Core 7, превосходного звука и изображения, а также повышенной прочности, он обеспечит вам максимальную продуктивность!
🔹 Поддержка функций Copilot на базе ИИ.
🔹 Скоростной беспроводной модуль Wi-Fi 6E.
🔹 Малый вес и отличная автономность.
#ASUS#ExpertBook#Ноутбук
ASUS ExpertBook B3: Мощный бизнес-ноутбук с искусственным интеллектом! 💼⚡
Повышайте продуктивность без лишних усилий, благодаря интеллектуальной оптимизации работы, продвинутой системе безопасности и высокой производительности.
Работайте эффективно — в любое время и в любом месте!
#ASUS#ExpertBook#AIPC#AI#Продуктивность#Безопасность
💻 "ExpertBook P5 — мое универсальное рабочее пространство!" — делится Расул Касымбеков, руководитель бренда одежды для поваров Chef Star. 💫
🤩 От управления заказами до разработки дизайна — этот ноутбук справляется со всеми задачами.
▶️ Узнайте, почему Расул выбрал ExpertBook P5 для своего бизнеса: https://cis.asus.click/ExpertBookP5
#ASUS#ExpertBook#P5#бизнес#отзыв