В фреймворке 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
Qalblar yanada taskin topdi, ahir oshiqlar o'lmas!
Fotih Dumanning kitoblari yaxshi chiqdi, "Sir" kitobini 2 kunda o'qib tugatdim, bundan avval "Men" kitobini mutolaa qilgan edik.
🤫 Ushbu kitobga o'lim haqida Sir berkitilgan ekan, men uni anglab yetdim, Sizga ham o'qishni tavsiya etaman, zero, ancha sirlardan xabar topasiz.
#Sir
@isakovxusniddin
#SIR#Facts@ssbclear
🗳Massive Drop in 'Zero Ineligible Voter' Polling Stations in Bengal
- The number of polling stations in West Bengal with zero ineligible voters plummeted from 2,208 to just 7 after Election Commission scrutiny.
- Districts like South 24 Parganas, Purulia, and Malda, which previously had hundreds of such booths, now report only one or two each.
- Over 50 lakh electors have been flagged as dead, duplicate, shifted, or untraceable.
- Around 98.84% of enumeration forms have been digitised from 7.6 crore registered voters.
- A new software, Demographic Similar Entries, helped detect 1.22 lakh ineligible names so far.
- Legal action is promised against Booth Level Officers if deliberate errors are found.
- These reforms come ahead of West Bengal’s upcoming elections next year.