В фреймворке 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
Channel: Wall Street Gems
Members: ~50.95K
💢 Username: @wallstreetgems
Description:
Weekly 5x, 10x, 20x and even 100x crypto gems. The one and only official Wall Street Gems Telegram channel… the most profitable trading community in the world Note- we don’t have any ViP or a personal contact account
🏷 Tags: #crypto_fx_trading
#crypto#pumps#binance#invest#crypto_pump_group
https://telegramchannels.me/channels/wallstreetgems