В фреймворке 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
В США ежегодно 30-40 тыс полицейских автопогонь. 90% заканчиваются немедленным задержанием. Но преступники все равно пытаются.
Иногда у них получается. На видео - полицейский остановил белый Chrysler 300, пока шел к нему, тот сорвался с места. Судя по звуку мотора, это 300C SRT8 6.4 на 470 лс с 4,3 сек до сотни.
Его пытались догнать заряженные полицейские мустанги, но через 7 минут потеряли из виду.
Большие моторы надо запретить - 👎
Не надо - 👍
#chrysler
#python#acura#audi#autopilot#chrysler#comma#fsd#genesis#honda#hyundai#jeep#kia#lexus#mazda#nissan#openpilot#ram#selfdriving#tesla#toyota#volkswagen
sunnypilot is a free, open-source driver assistance system that works with over 300 car models, offering features like independent lane centering and adaptive cruise control for a safer, more customizable driving experience. It requires a compatible device (like comma three) and a supported car with adaptive cruise control, providing smoother steering, automatic speed adjustments, and easy updates through user-friendly installation options. Users benefit from enhanced safety, personalized driving settings, and access to a community for support and updates.
https://github.com/sunnypilot/sunnypilot