Установить свойства виджета в PySide можно не только через соответствующие методы и конструктор класса. Можно их изменять с помощью метода setProperty по имени.
btn = QPushButton("Click Me")
btn.setProperty("flat", True)
Это аналогично вызову
btn.setFlat(True)
Если указать несуществующее свойство, то оно просто создается
btn.setProperty("btnType", "super")
Получить его значение можно методом .property(name)
btn_type = btn.property("btnType")
Когда это может быть полезно?
▫️Можно просто хранить какие то данные в виджете и потом их доставать обратно
widget = QWidget()
widget.setProperty('my_data', 123)
print(widget.property('my_data'))
▫️ Назначая эти свойства разным виджетам можно потом отличить виджеты во время итераци по ним. Например, найти все кнопки со свойством my_data="superbtn".
Но ведь вместо кастомного свойства можно использовать objectName, будет тот же результат.
Да, но y ObjectName есть ограничение - только строки.
▫️ Если нам потребуется не просто поиск а, например, сортировка по числу, то свойства позволяют нам это сделать. Поддерживается любой тип данных
widget.setProperty('my_data', {'Key': 'value'})
widget.setProperty('order', 1)
all_widgets.sort(key=w: w.property('order'))
Но ведь Python позволяет всё вышеперечисленное сделать простым созданием атрибута у объекта
widget.order = 1
widget.my_data = 123
Да, но я думаю что не надо объяснять почему не стоит так делать. К тому же, если у виджета нет свойства то метод .property(name) вернет None, а отсутствующий атрибут выбросит исключение.
▫️ Действительно полезное применение кастомным свойствам - контроль стилей. Здесь атрибутами не обойтись, нужны именно свойства.
Дело в том, что в селекторах стилей можно указывать конкретные свойства виджетов на которые следует назначать стиль.
Просто запустите этот код
from PySide2.QtWidgets import *
if __name__ == "__main__":
app = QApplication([])
widget = QWidget(minimumWidth=300)
layout = QVBoxLayout(widget)
btn1 = QPushButton("Action 1")
btn2 = QPushButton("Action 2")
btn3 = QPushButton("Action 3", flat=True)
layout.addWidget(btn1)
layout.addWidget(btn2)
layout.addWidget(btn3)
# добавим кастомное свойство одной кнопке
btn1.setProperty("btnType", "super")
# добавляем стили
widget.setStyleSheet(
"""
QPushButton[btnType="super"] {
background-color: yellow;
color: red;
}
QPushButton[flat="true"] {
color: yellow;
}
"""
)
widget.show()
app.exec_()
С помощью селектора мы избирательно назначили стили на конкретные кнопки.
Как получить список всех кастомный свойств?
Функция получения списка кастомных свойств отличается от получения дефолтных.
def print_widget_dyn_properties(widget):
for prop_name in widget.dynamicPropertyNames():
property_name = prop_name.data().decode()
property_value = widget.property(property_name)
print(f"{property_name}: {property_value}")
#tricks#qt
Ўзбекистон-Франция бизнес форумида Ўзбекистон Республикаси Президенти Шавкат Мирзиёев Франция тараққиёт агентлиги раҳбари Реми Риу билан учрашув ўтказди.
—
На полях узбекско-французского бизнес-форума Президент Республики Узбекистан Шавкат Мирзиёев провел встречу с генеральным директором Французского агентства развития Реми Риу.
#Mirziyoyev#uchrashuv#FTA#hamkorlik
Prezident.uz|Facebook|Instagram|YouTube|Twitter
Япония и Арабский мир - зона свободной торговли и обеспечение доступа к энергоресурсам
Перспективы заключения соглашения о создании зоны свободной торговли (FTA) между Японией и участниками Совета сотрудничества арабских государств Персидского залива - одна из важных тем переговоров премьера Ф. Кисида и саудовского принца Мухаммеда бен Сальмана. В ходе онлайн-встречи стороны подтвердили общее стремление достигнуть скорейшего компромисса.
Старт диалогу о заключении соглашения был дан в июле 2023 г. во время визита Ф. Кисида на Ближний Восток. В Совет сотрудничества входит 6 государств-ведущих поставщиков энергоносителей на японский рынок: Саудовская Аравия, ОАЭ, Катар, Кувейт, Оман, Бахрейн. Так, совокупный объем торговли между Японией и странами-участниками Совета достиг в 2023 г. 115,5 млрд долл. Саудовская Аравия и ОАЭ неизменно входят в топ-10 партнеров Японии во внешней торговле.
Япония более чем на 95% зависит от поставок нефти и газа из стран Персидского залива (совокупный объем импорта в 2023 г. - 93,5 млрд долл.), поставляет в регион автомобили, станки и оборудование и другие товары на общую сумму порядка 22 млрд долл. Кроме того, ведет консультации о создании новых совместных цепочек поставок водорода и топливного аммиака, развитии в регионе возобновляемой энергетики.
Арабские государства Персидского залива в 2003 г. образовали зону свободной торговли, с общей таможенной пошлиной при импорте различных товаров в размере 5%, под действие которой сейчас подпадает значительная часть японских поставок.
На двустороннем треке Япония и Саудовская Аравия достигли договоренности о создании консультационного совета о стратегическом партнерстве, работа которого будет сфокусирована на четырех приоритетных областях: (1) энергетика, (2) промышленность, (3) стабильность на Ближнем Востоке и (4) мягкая сила.
«На полях» встречи японского премьера и наследного принца стало известно о том, что универсальная торгово-инвестиционная корпорация Marubeni создаст на территории королевства крупнейший в стране парк ветряных электростанций мощностью 1100 Мегаватт - порядка 150 «ветряков». Стоимость проекта оценивается в 640 млн долл.
Японский бизнес будет контролировать весь ход реализации проекта от обеспечения финансирования до управления создаваемой инфраструктурой, получит возможность поставлять электроэнергию по фиксированным тарифам в течение 25 лет. Ожидается, что ветропарк выйдет на полную мощность в августе 2026 г. Таким образом Япония стремится принять активное участие в достижении цели Саудовской Аравии повысить долю ВИЭ в энергобалансе до 50% к 2030 г.
#Япония#FTA#Саудовская_Аравия
Япония и ОАЭ намерены заключить новое соглашение об экономическом партнерстве
Правительства Японии и Объединенных Арабских Эмиратов (ОАЭ) достигли договоренности о начале переговоров по вопросу заключения Соглашения об экономическом партнерстве (EPA).
Товарооборот Японии и ОАЭ в 2023 г. достиг 47,4 млрд долл., за первое полугодие 2024 г. - 24,2 млрд долл. По объемам торговли ОАЭ занимает первое место среди внешнеэкономических партнеров Японии на Ближнем Востоке. Кроме того, ОАЭ является важным направлением для японских инвестиций.
В настоящий момент свыше 60% японского экспорта в эмираты приходится на транспортные средства и оборудование, значительная часть которого облагается 5% ввозной пошлиной. Таким образом, за счет заключения EPA в Японии рассчитывают на снижение или отмену соответствующих сборов, а также обеспечение стабильности поставок критических важных для экономики энергоносителей.
В свою очередь, 98% импортируемых из ОАЭ в Японию товаров (в первую очередь, углеводородов) не подпадает под действие таможенных пошлин. Поэтому интерес ОАЭ при заключении соглашения состоит, в первую очередь, в привлечении дополнительных инвестиций в развитие несырьевых секторов экономики - медицинскую и ИТ сферы, а также выработке гармонизированных правил трансграничной передачи данных.
Дополнительным импульсом к ускорению переговорного процесса послужило подписание в мае 2024 г. EPA между ОАЭ и Республикой Корея, поставщики автомобилей и оборудования из которой являются конкурентами японского бизнеса.
Кроме того, Япония ведет консультации о заключении соглашения о создании зоны свободной торговли (FTA) с участниками Совета сотрудничества арабских государств Персидского залива, в который входят ОАЭ и Саудовская Аравия.
Формат EPA в сравнении с FTA предполагает более углубленную форму экономической интеграции и охватывает большее количество сфер взаимодействия. Помимо торговли товарами и услугами EPA регламентирует также вопросы осуществления инвестиций, защиты прав интеллектуальной собственности, перемещения трудовых ресурсов и пр. Стороны рассчитывают на достижение синергетического эффекта от двустороннего и многостороннего соглашений.
#Япония#ОАЭ#EPA#FTA#торговля#инвестиции
ЗСТ Япония-Китай-Корея снова на повестке дня
Лидеры Японии, КНР и Республики Корея на трехстороннем саммите в Сеуле договорились возобновить переговоры о создании трехсторонней зоны свободной торговли (ЗСТ).
Три страны являются участницами образованного в 2022 г. Всестороннего регионального экономического партнерства (ВРЭП). Всего в эту группировку входит 15 экономик АТР. В рамках ВРЭП наиболее острые противоречия сохраняются именно между тремя крупнейшими участниками, поэтому трехсторонее соглашение Япония-Китай-Корея дополнит формат ВРЭП, более детально и глубоко проработает некоторые аспекты торгового взаимодействия трех стран.
Планируется, что переговоры будут касаться наиболее проблемных тем - торговли автомобилями и их комплектующими, промышленных субсидий и предоставления преференций компаниям (тема особенно чувствительна на фоне роста производства электрокаров в Китае), а также регулирования в сфере электронной торговли.
Китай является главным торговым партнером Японии и Южной Кореи, на его долю приходится около 20% общего объема торговли каждой из стран. В свою очередь, для Китая Япония и Корея выступают вторым и третьим торговым партнером после США. Экономики Японии и Кореи также тесно взаимосвязаны, выступая друг для друга четвертым экономическим партнером.
Усиливающиеся кризисные явления в экономиках трех стран и нарастание протекционистских тенденций на глобальных рынках, общие демографические проблемы, полагают эксперты, создают объективные условия для поиска точек кооперации между соседями, а неспособность сотрудничать, наоборот, может привести к проигрышу всех.
Подобные опасения стали решающим фактором, побудившим лидеров возобновить переговоры по ЗСТ несмотря на нарастающую геополитичечкую напряженность.
#Япония#Корея#Китай#FTA#RCEP#зст