В фреймворке 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
Post #IV: “Ieri Calenda ha proposto un Documento. Abbiamo replicato con queste piccole modifiche, semplicissime. Chi vuole distruggere il progetto del #TerzoPolo lo dica a viso aperto. Noi siamo pronti a firmare l’accordo. #Azione?”
@UltimoraPolitics
Non perdonerò mai a Calenda di aver salvato Renzi e i suoi dal miglio verde: senza il suo aiuto, con ogni probabilità, avrebbero fatto la fine che meritavano, quella di Luigi Di Maio.
Calenda scopre adesso di che panni veste Matteo Renzi? Lo spettacolo a cui stiamo assistendo è divertente da un lato, terribilmente imbarazzante dall'altro.
La mia al TG Plus di Cusano Italia TV
#Renzi#Calenda#TerzoPolo#politica#televisione#informazione#italia#giornalismo
Carlo #Calenda annuncia che il #TerzoPolo appoggerà #DAmato nel #Lazio e #Moratti in #Lombardia: “Hanno fatto bene sulla campagna vaccinale e la sanità.”
@UltimoraPolitics
#FVG2023
L’ex senatore PD Alessandro #Maran è il candidato del #TerzoPolo alla presidenza del Friuli Venezia Giulia.
Sono in corso interlocuzioni per presentare anche una lista di #PiùEuropa a suo sostegno.
(Il Piccolo)
@UltimoraPolitics24