В фреймворке 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
⭐️Rare Dodge Charger Daytona For Sale! 🏎️
Own a piece of automotive history with this ultra-rare 1969 Dodge Charger Daytona! Only 70 were equipped with the powerful 425-HP 7-liter V8 Hemi, and this is one of just 22 with a four-speed manual transmission.
🔧 Customized to perfection with enhanced chassis, high-performance cooling system, upgraded brakes, and complete interior amenities including power windows and six-way adjustable driver's seat.
💰Could break the current auction record price of $1.43 million. Don't miss out on this opportunity!
#ChargerDaytona#RareCars#ClassicCars#Auction#Auto
🚗✨For Sale: A Rare Jaguar Duo!✨🚗
Up for auction on Pistonheads, we present a unique lot featuring two legendary Jaguars: the racing beast XJR-15 and the classic coupe XJR-S! 🏁
🌟Jaguar XJR-15🌟
- The world’s first production car with a carbon fiber body! 🏆
- Only 53 units produced from 1990 to 1992, all equipped with a powerful 6.0L V12 engine (450 hp). 🔥
- Out of those, only 27 are road-legal! This one is a pure track version with chassis number 48. 🏎️💨
- Notably, it won a support race for Formula 1 at Silverstone in 1991, driven by the legendary Juan Manuel Fangio II, with his autograph still gracing the body! ✍️🏅
#Jaguar#XJR15#XJRS#ClassicCars#CarAuction#Pistonheads#Motorsport#CarCollectors#RareCars#Auto🚘💖