Регулярно приходится писать и ревьюить код, где используется PySide2-6.
Заметил, что в подавляющем большинстве случаев настройка создаваемых базовых виджетов происходит через методы. Думаю, всем знаком такой способ.
Простой пример с кнопкой:
button = QPushButton("Click Me")
button.setMinimumWidth(300)
button.setFlat(True)
button.setStyleSheet("font-size: 20pt")
button.setToolTip("Super Button")
button.clicked.connect(lambda: print("Button clicked"))
Но есть и альтернативный способ - настройка через свойства. Это просто ключевые аргументы конструктора класса. Хоть они и не указаны в документации как аргументы, но они есть)
Этот код делает тоже самое но с помощью Property
button = QPushButton(
"Click Me",
minimumWidth=300,
flat=True,
styleSheet="font-size: 20pt",
toolTip="Super Button",
clicked=lambda: print("Button clicked"),
)
Где это может быть полезно
▫️ Это выглядит более аккуратно и коротко, уже повод использовать
▫️ Может использоваться в заполнении лейаута, когда нам не нужно никакое другое взаимодействие с виджетом и поэтому сохранять его в переменную не требуется. Например, лейбл или кнопка.
widget = QWidget(minimumWidth=400)
layout = QHBoxLayout(widget)
layout.addWidget(QLabel("Button >", alignment=Qt.AlignRight))
layout.addWidget(QPushButton("Click Me", clicked=lambda: print("Button clicked")))
widget.show()
Либо так
widget = QWidget(minimumWidth=400)
layout = QHBoxLayout(widget)
for wd in (
QLabel("Button >", alignment=Qt.AlignRight),
QPushButton("Click Me", clicked=lambda: ...)
):
layout.addWidget(wd)
widget.show()
▫️ Можно хранить настройки в каком-то конфиге или генерировать на лету, после чего передавать как kwargs.
kwargs = {"text": "Hello " * 30, "wordWrap": True}
my_label = QLabel(**kwargs)
Как получить полный список доступных свойств?
Эта функция распечатает в терминал все свойства виджета и их текущие значения
def print_widget_properties(widget):
meta_object = widget.metaObject()
for i in range(meta_object.propertyCount()):
property_ = meta_object.property(i)
property_name = property_.name()
property_value = property_.read(widget)
print(f"{property_name}: {property_value}")
#tricks#qt
Le Forze di Difesa del Popolo, #HPG/#PKK: "Dal 22 al 23 marzo, le forze armate della Repubblica di #Turchia, hanno colpito le zone delle nostre basi 1045 volte, con gli aerei, elicotteri, carri, armi pesanti e obice. Abbiamo risposto".
«Тактика выжженной земли» или война по-турецки
Капиталистические политические режимы похожи друг на друга. Причем сходство между ними проявляется и в отношении класса угнетателей по отношению к другим классам, и в выборе методов достижения своих хищнических целей. Глядя на то, как турки ведут военные действия в Рожаве, и Южном Курдистане, не вольно на ум приходят образы вьетнамской войны, где армия США применяла печально известную тактику «выжженной земли».
Бомбардировка турецкой авиацией населенных пунктов в окрестностях города Захо области Духок в Южном Курдистане 8 августа 2020 года, из-за которой пострадало мирное население не первое подобное преступление. Оно стало очередным звеном в цепи актов военной агрессии, совершаемых турецкой армией уже не первый год. Но приобрели они интенсивность после 15 июня этого года, когда кабинет Эрдогана провозгласил начало новой захватнической операции в Южном Курдистане под предлогом борьбы против партизанских формирований Народных сил самообороны (#HPG).
Собственно, любая война всегда связана с жертвами. И гражданское население, к несчастью, страдает не в меньшей степени. Но у любой войны есть правила, в конце концов, есть и нормы международных конвенций…
Что же мы видим на деле – как только Турция наносит очередной удар по мирным объектам в районах Южного Курдистана, где органы власти подотчетны Демократической партии Курдистана (#ДПК), барзанисты максимально начинают «разъяснять» местным жителям, что все их беды не от того, что Турция их бомбит, а что этому виной Рабочая партия Курдистана (#РПК). Призывают симпатизирующее партии население не оказывать помощь партизанам, сообщать в соответствующие органы, если их отряды появляются в округе. В лучших традициях американской контр-партизанской тактики, которая применялась во Вьетнаме.
Да, конечно, нельзя ставить под один гребень всех курдов, живущих на подконтрольной ДПК территории, ответственность за сотрудничество с врагом лежит на совести исключительно конкретных официальных лиц, которые следуют в фарватере политического курса «династии» Барзани (#Barzani). На самом деле и жители Автономного Курдистана, и бойцы тех же отрядов Пешмерге (#Peşmerge) в массе своей поддерживают именно партизан, разделяя, в общем-то, идеологию «апочистов» (#ApocuHareket).
Об этом, кстати, не раз говорил наш товарищ, военный журналист и эксперт в курдском вопросе @qashqul, который сам побывал свидетелем сочувствующих настроений среди бойцов Пешмерге по отношению к РПК…
Об этом и многом другом знаем не понаслышке. Не скрывают своих явно пропартизанских взглядов и некоторые генералы Южного Курдистана которые в доверительных беседах не раз говорили, что, видя на вопиющее предательство элиты ДПК и сотрудничество с режимом Эрдогана, ушли бы в горы к РПК. Только вот политический курс барзанистских лидеров от этого сильно не меняется.
Надеемся, что такие факты, о которых мы поделились с Вами, наши уважаемые читатели, все же станут известны широким кругам мировой общественности.
#MuratKarayilan (#HPG, cofondatore #PKK): «Non abbandoneremo il popolo di #Rojava, costi quel che costi. #Turchia parte attiva negli attacchi in #Siria. Non si può parlare di pace e colpire i curdi. Responsabilità anche di #USA, #UK, #Germania, #Francia»
📌📽 Отличная подборка от канала @Gerilla_Tv🇬🇫🇻🇳
Для тех, кто понимает турецкий язык, вообще без улыбки смотреть не возможно 🇹🇷☠️...
#ApocuHareket#Başûr#Kurdistan#PKK#HPG#TürkiyeSaldırı#TürkPolitikası#FaşistTürkDevleti#Kurdistan
🆔@jiyana_nu
Барзанисты встали на тропу войны...
Минувшая неделя ознаменовалась беспрецедентным для медиа-пространства выступлением Демократической партии Курдистана (ДПК) и представителей Регионального правительства Курдистана против движения «апочистов» в лице Союза общин Курдистана (Koma Civakên Kurdistan – KCK) и Рабочей партии Курдистана (РПК). Нельзя сказать, что ситуация стала неожиданностью для Кандиля, и, в первую очередь, это связано с тем, что в «грязных политических» технологиях всегда применяется принцип «лучшая защита – нападение». А РПК давно не питает иллюзий насчет того, каково истинное отношение клана Барзани к партии, поэтому всегда готова принять удар.
Какова истинная подоплека начатой барзанистами кампании против курдского движения? Что и кто стоит за хаотичными информационными атаками ДПК? К чему они приведут в ближайшем будущем? И, наконец, какой возможный ответ приготовит РПК для главной протурецкой политической силы внутри курдского мира?
На все эти вопросы авторский коллектив канала Jiyana_Nû постарается ответить в еженедельной редакционной статье, предложенной Вашему вниманию >>>
#Barzani#Talabani#PKK#KCK#HPG#KDP#PUK#ДПК#ПСК#Горан#Erbil#Duhok#Suleymaniyah#Qandil#BashureKurdistan#Başur#Parastin#MİT#Asayiş#ПротестыБашур
🆔@jiyana_nu
Всем известно, что дружба – это всегда равноправные долговременные отношения. Товарищество – это отношения, основанные на общности интересов и идейных взглядов. Но это в жизни и в политической борьбе.
В дипломатии же, а в военной дипломатии, особенно, не может быть ни дружбы, ни товарищества. Есть лишь совпадение интересов; оно может быть временным, либо вариант второй - когда слабый игрок следует в фарватере интересов игрока более сильного.
О приоритетах внешней политике США в Большом Курдистане, попытках «слива» Рабочей партии Курдистана, усилении роли Турции и кризисе власти в северо-иракской курдской автономии в еженедельной редакционной статье канала @jiyana_nu.
#BaşureKürdistan#PKK#HPG#Qandil#Erbil#Duhok#AsSuleymaniyah#Rojava#Barzani#Talabani#KDP#PUK#Goran#SyrianWar#StopISIS#ДПК#ПСК#РПК#Барзани#Талабани#Рожава#USPolicy#MiddleEast