В фреймворке 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
Giacomo Possamai (centrosinistra) strappa #Vicenza al centrodestra, che invece si conferma come schieramento vincitore a #Pisa, dove è rieletto l'uscente Michele Conti, e a #Siena, dove vince Nicoletta Fabio.
Il centrodestra vince al primo turno a #Latina, dove Matilde Celentano prevale sull'uscente Damiano Coletta, e ad #Imperia, dove è rieletto Claudio Scajola. A #Vicenza si va al ballottaggio tra Giacomo Possamai (CSX) e l'uscente Francesco Rucco (CDX).
#Amministrative2023
🟠#Vicenza: Eletto sindaco Giacomo #Possamai, il centrosinistra strappa la città al centrodestra che schierava il sindaco uscente Francesco #Rucco
@UltimoraPolitics
#Amministrative2023
Recap capoluoghi:
#Ancona: 🔵 CDX GAIN
#Brindisi: 🔵 CDX GAIN
#Massa: 🔵 CDX HOLD
#Pisa: 🔵 CDX HOLD
#Siena: 🔵 CDX HOLD
#Terni: ⚪️ CIV GAIN
#Vicenza: 🟠 CSX GAIN
@UltimoraPolitics