В фреймворке 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
🦾#КороткойСтрокой
• Гендиректор #Nvidia предсказал появление игр, целиком сгенерированных ИИ, менее чем через 10 лет.
• В MIT придумали способ в 30 раз ускорить генерацию изображений с помощью нейросетей.
• Глава #StabilityAI Эмад Мостак ушел в отставку. Он заявил, что займется децентрализованным ИИ.
• По данным WABetaInfo, мессенджер WhatsApp работает над размещением #Meta AI в строке поиска.
Stability AI: Fair Pay for Artists?💐
Prem Akkaraju, CEO of Stability AI, has announced a game-changing commitment:
Artists whose work is used to train generative AI models may soon receive compensation — similar to royalties on Spotify.
Key points:
— Focus on licensed training data
— Plans for revenue-sharing models with creators
— A move toward ethical and transparent AI development
✉️As debates rage over AI and authorship, Stability AI takes a step toward making tech fairer — and more artist-friendly.
#AIArt#StabilityAI#CreativeRights#EthicalAI#ArtAndTech