В фреймворке 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
🌟 Exciting News for Supercar Enthusiasts! 🚗💨
The British have officially kicked off production of the stunning Ginetta Akula! 🦈✨
First unveiled in 2019, this masterpiece is limited to just 20 units, starting at £275,000. 💰
Featuring a classic design, the Akula boasts a powerful 6.4L V8 engine with 600 hp, paired with a manual transmission and rear-wheel drive. 🔥 Despite its robust engine, it weighs only 1.2 tons, accelerating from 0 to 100 km/h in just 2.9 seconds! ⚡️🏁 With a top speed of 290 km/h, this beauty is ready to roar!
Are you ready to experience the thrill? 😍
#GinettaAkula#Supercar#LimitedEdition#V8Power#CarEnthusiast#LuxuryCars#SpeedDemon#Auto
🚀 Introducing the ultimate beast on wheels - Xiaomi's SU7 Ultra! With a whopping 1548 horsepower from its three electric motors, this sedan accelerates from 0 to 100 km/h in just 1.97 seconds and hits 200 km/h in 5.96 seconds. It boasts a top speed exceeding 350 km/h! 🏎️
#Xiaomi#SU7Ultra#SpeedDemon#ElectricPower#NurburgringRecordBreaker🏁🔥
🚀Bugatti Mistral Sets New Speed Record for Roadsters!🚀
The stunning hypercar with an open top has achieved an incredible speed of 453.91 km/h on the ATP track in Papenburg, Germany! 🇩🇪🏁 Behind the wheel was none other than Andy Wallace, Bugatti's official driver and winner of the 24 Hours of Le Mans! 🏆
This remarkable feat surpasses Bugatti's previous record set in 2013 with the Veyron Grand Sport Vitesse, which reached 408.8 km/h. The title was briefly held by the Hennessey Venom GT Spyder at 427 km/h.
The Mistral is powered by an astonishing 8.0-liter W16 engine with four turbochargers, delivering a mind-blowing 1600 hp! 🔥💨
#BugattiMistral#SpeedRecord#Hypercar#W16#AndyWallace#CarEnthusiast#LuxuryCars#AutomotiveExcellence#SpeedDemon#RecordBreaker#Auto