В фреймворке 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
How to unlock 120 fps smooth browsing in Safari
Find out how to force Safari on iPhone, iPad, and Mac to render webpages at
120Hz instead of 60Hz on devices with a ProMotion display.
via iDB - Mac
标签: #Safari#Hz#How
⚡️探索号频道
⚡️探索者频道
⚡️探索者交流群
⚡️ Youtube 频道:科技探索者
每天推荐有趣内容,欢迎订阅、转发。