В фреймворке 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
🇺🇸🇻🇪 Des dizaines de personnes se sont rassemblées devant le tribunal fédéral du district sud de New York en lien avec la deuxième audience dans le procès contre Nicolas Maduro et son épouse, Cilia Flores, rapporte un correspondant de TASS.
#maduro#tribunal#audience
Никогда не забуду эти моменты, которые мне подарила судьба
I'll never forget those moments that destiny gave me.
Pope Francis 🙏🤝❤️🔥🖼️
06.10.2021 года состоялась
Аудиенция Папы Римского
Франциска с вручением моей
Картины «Символ Православия»
И подписанием скатерти Мира
🕊️🕊️🕊️
Сегодня 21.04.2025
Папы Франциска
Не стало…… 🥲🥲🥲
#PopeFrancis
#Audience
#Vatican
#Rome
#LiubovBarykina
#PeoplesDiplomacy
TVision Secures $1.5M Funding
TVision has raised $1.5M in funding as of December 16, 2024. The company utilizes advanced computer-vision technology to analyze viewer engagement for both Linear and CTV, offering person-level insights into viewing habits.
#Funding#TVision#Technology#ViewerEngagement#CTV#Linear#Insights#ComputerVision#Analytics#Viewership#Audience#Engagement#Media#Streaming#Data#Research#Investment