В фреймворке 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
📍 Les militaires du groupement de troupes #Centre continuent de perfectionner leurs compétences sur le terrain d'entraînement situé à l’arrière-front de l'opération militaire spéciale.
RT en français • Osez questionner !
⚪️Les militaires du groupement de troupes #Centre ont pris le contrôle d’un point de commandement de drones ukrainiens dans le secteur de Dobropolié dans la zone de l'opération militaire spéciale.
RT en français • Osez questionner !
🟢Les militaires du groupement de troupes #Centre ont détruit les antennes relais de communication ukrainiennes dans le secteur de Dobropolié.
RT en français • Osez questionner !
📍 Les militaires du groupement de troupes #Centre continuent de perfectionner leurs compétences sur le terrain d'entraînement situé à l’arrière-front de l'opération militaire spéciale.
RT en français • Osez questionner !
▶️Les militaires du groupement de troupes #Centre de l'armée russe continuent la restauration des monuments dédiés aux héros de la Grande Guerre patriotique dans la République populaire de #Donetsk.
RT en français • Osez questionner !
▶️Les militaires du groupement de troupes #Centre de l'armée russe continuent la restauration des monuments dédiés aux héros de la Grande Guerre patriotique dans la République populaire de #Donetsk.
RT en français • Osez questionner !
🇬🇫 Le pas de tir pour les lanceurs Soyouz, situé au centre spatial de Kourou en Guyane française, a été détruit à l’aide d’une explosion contrôlée. Cette information a été publiée sur la page Techniques Spatiales sur X.
#guyane#centre#explosion#destruction