В фреймворке 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
🇺🇸#макро#США
Если вдруг кому то пришла в голову шальная мысль, что кризис кончился в США - это не так. Он скорее только начинается...
☝️ Строительство нового жилья продолжает падать - жильё всё ещё не доступно. А это тянет за собой всю цепочку - строители типа #DHI уже в серьезной просадке...
🇺🇸#макро#США
👆Нераспроданные запасы новых односемейных домов на всех стадиях строительства — от ещё не начатых до завершённых — выросли на 9,3% в годовом исчислении до 492000 домов без учёта сезонных колебаний, что является самым высоким показателем с декабря 2007 года.
🔴 Нераспроданные запасы построенных новых домов выросли на 53% по сравнению с прошлым годом и составили 116000 домов, что является самым высоким показателем с июля 2009 года - в разгар жилищного кризиса, когда застройщики пытались выжить...
🔴 Продажи готовых домов упали на 25% по сравнению с предыдущим месяцем в октябре до 21000 домов.
Жду проблемы у застройщиков сейчас:
#LEN#DHI#TOL#MTH#PHM#CCS