В фреймворке 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
#Murmuration#PKM 说人话和文学性表达是不同的,中文如此,英文同样如此。比如:
In English, we say: "I miss myself."
But in poetry, we say: "I left pieces of me
in places I can’t return to."
or, "I am a ghost of the person I used to be, haunting the halls of my own heart, searching for pieces of me left behind."
or, "I am a puzzle, and some pieces wandered too far to find their way back."
比如中文文学善于写“痛”,英文案例也是写“痛”,且需要不带任何遗憾。
当然,网文也可以用这种套路,仅仅是表达式而已。
文字嘛,表达而已,不论是故事性、艺术性均需要留一点“钩子”来铺垫。
当然,文案(商业文案)亦如此。
#Murmuration#PKM 这个有意思,[《中国的地图每张都是错的》](https://telegra.ph/%E6%AF%8F%E5%BC%A0%E4%B8%AD%E5%9B%BD%E5%9C%B0%E5%9B%BE%E9%83%BD%E6%98%AF%E9%94%99%E7%9A%84%E8%BF%98%E6%98%AF%E6%95%85%E6%84%8F%E7%9A%84-05-15),这是翻译版本。原版在这里 [《Every map of China is wrong》](https://medium.com/@anastasia.bizyayeva/every-map-of-china-is-wrong-bc2bce145db2) 。🤷我说怎么地图啥都飘呢,哈哈哈