Установить свойства виджета в 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
🚢Lila Global заключила первую в году сделку по утилизации балкера типоразмера Capesize.
Дубайская судоходная компания Lila Global, связанная с предпринимателем Anil Sharma, продала на слом балкер типоразмера Capesize "Beihai" (176 000 dwt, 1993 года постройки) для переработки в Бангладеш.
Это первая сделка по утилизации балкера типоразмера Capesize в 2026 году.
Судно завершает карьеру под флагом Lila Global, однако изначально было построено как "China Steel Excellence" для китайского оператора.
В 2025 году Lila Global обеспечила около половины утилизированного тоннажа балкеров типоразмера Capesize, подтверждая активную позицию в сегменте краткой эксплуатации и последующей утилизации старого тоннажа.
📌Lila Global основана в 2016 году и является частной судоходной компанией со штаб-квартирой в Дубае. Компания контролируется частными инвесторами, связанными с контролирующим владельцем - Анилом Шармой.
#drybulk#Capesize#shiprecycling#Bangladesh#shippingmarket
🚢GMS: эскалация на Ближнем Востоке дестабилизирует рынки и тормозит рециклинг.
Глобальный покупатель флота на утилизацию - GMS - отмечает резкий рост волатильности на фоне конфликта на Ближнем Востоке.
Нефть за выходные подскочила более чем на 10% — с ~$63 до ~$71,9 за баррель.
Индекс Baltic Exchange прибавил 1,1%, при этом сегменты Capesize, Panamax и Supramax выросли на 0,2%, 1,4% и 3% соответственно — динамика пока сдержаннее, чем у нефтяных фьючерсов.
Валюты стран-основных переработчиков лома и цены на судовой листовой прокат снизились, пусть и умеренно. Активность на рынке утилизации отошла на второй план: продавцы и покупатели выжидают на фоне неопределённости и дефицита тоннажа, усугублённого геополитикой.
По оценке GMS,масштаб регионального шока сопоставим с периодом COVID по степени прямого и глобального воздействия.
Для отрасли это означает повышенную паузу в S&P-рециклинге, рост цен на бункер и риск дальнейшей турбулентности при затяжной эскалации.
📌GMS (Gulf Maritime Services LLC) — международный покупатель флота, основанный в 1992 году, специализируется на купле-продаже судов на утилизацию. Компания является частной и принадлежит основателям.
#ShipRecycling#GMS#OilPrices#DryBulk#Geopolitics
🚢Ship Recycling: рынок утилизации сохраняет стабильность (Week 08, 16–22 февраля 2026).
Согласно отчету Athenian Shipbrokers S.A., на 8-й неделе 2026 года рынок утилизации флота демонстрирует стабильный тренд.
Цены покупки судов на утилизацию в основных странах-реципиентах остаются на устойчивых уровнях без резких колебаний.
По индикативам $/LDT:
Индия — Bulker: $400; Tanker: $420; Container: $430.
Бангладеш — Bulker: $405; Tanker: $425; Container: $435.
Пакистан — Bulker: $425; Tanker: $445; Container: $455 (премия к региону).
Турция — Bulker: $276; Tanker: $286; Container: $296.
Пакистан сохраняет ценовое лидерство по всем типам тоннажа, что отражает ограниченное предложение качественных корпусов и конкуренцию за крупнотоннажные единицы.
Индия и Бангладеш удерживают паритет с умеренной разницей по типам судов.
Турция остается вне ценового диапазона Южной Азии, что обусловлено структурой спроса и макроэкономическими факторами.
Долгосрочная динамика демонтажа (2011–2026) подтверждает снижение объемов в последние годы: после пиков 2012–2016 годов текущие уровни остаются существенно ниже исторических максимумов, что поддерживает ценовую устойчивость на фоне ограниченного притока старого тоннажа.
📌Athenian Shipbrokers S.A. — греческая брокерская компания, основанная в 1970-х годах, специализируется на S&P, чартеринге и аналитике рынков судоходства. Компания является частной и принадлежит греческим акционерам-основателям.
#ShipRecycling#DemolitionMarket#SNP#ShippingMarkets#MaritimeAnalytics
🚢ILO запускает пилотную схему защиты работников судоразделки в Бангладеш.
International Labour Organization (ILO) совместно с BIMCO запустила пилотную программу страхования производственных травм (Employment Injury Scheme — EIS) для работников судоразделочных верфей в Бангладеш — крупнейшей стране по утилизации судов в мире.
Система действует по принципу отраслевого страхового фонда. Продавцы судов, направляемых на утилизацию, могут внести $0,5 за тонну лёгкого водоизмещения (LDT) в фонд, подписав специальное письмо о намерениях, разработанное BIMCO, что позволит обеспечить компенсации рабочим и их семьям в случае тяжёлых травм или гибели.
Участие в программе добровольное и рассматривается как переходный механизм. В дальнейшем Бангладеш планирует внедрить национальную систему страхования производственных травм, которая станет обязательной и должна вступить в силу в июле 2027 года.
Инициатива направлена на повышение стандартов безопасности и соответствие требованиям Гонконгской международной конвенции по безопасной и экологически ответственной переработке судов.
📌International Labour Organization (ILO) — специализированное агентство ООН, занимается разработкой международных стандартов труда и защитой прав работников. Организация финансируется государствами-членами и международными партнёрами.
#ShipRecycling#Bangladesh#ILO#BIMCO#MaritimeSafety
🚢ЕС утвердил первый немецкий судоремонтный завод в списке разрешённых для конвенционной утилизации.
Европейская комиссия приняла 15-ю редакцию European List of Ship Recycling Facilities, включив в неё первую верфь в Германии (г. Эмден).
Список также продлевает аккредитацию четырёх верфей в Дании, Эстонии, Литве и Испании, а также одной площадки в Турции. Одновременно три предприятия исключены: финская верфь не продлила разрешение, площадка в Северной Ирландии не предоставила требуемые данные, а одна турецкая верфь признана несоответствующей требованиям EU Ship Recycling Regulation (в части защиты береговой линии).
Включение в список позволяет предприятиям утилизировать крупнотоннажные суда под флагом стран ЕС при соблюдении строгих экологических, трудовых и стандартов безопасности. Обновлённый перечень включает 41 площадку: 30 в Европе (ЕС, Норвегия, Великобритания), 10 в Турции и 1 в США.
Для судоходной отрасли решение усиливает роль регулируемой утилизации и поддерживает развитие циркулярной экономики, включая переработку стали и вторичных материалов.
Напомним, что с 31 декабря 2018 года суда под флагом ЕС обязаны проходить утилизацию только на площадках из Европейского списка. При этом европейские судовладельцы контролируют около 30% мирового флота по дедвейту.
📌European Commission — исполнительный орган Европейского союза, созданный в 1958 году, отвечает за разработку и реализацию законодательства ЕС. Финансируется из общего бюджета Европейского союза.
#ShipRecycling#EURegulation#CircularEconomy#MaritimePolicy#Sustainability
🚢Рынок утилизации флота: Индия замедляется, Бангладеш оживляется.
На фоне геополитической напряжённости и колебаний валют мировой рынок судоразделки демонстрирует разнонаправленную динамику в ключевых центрах Южной Азии.
В Индии ожидается существенное замедление активности после объявления форс-мажора по поставкам природного газа, используемого для операций по резке металла.
Ограничение энергоснабжения может привести к сокращению производственных мощностей на верфях и увеличению сроков переработки. При этом ограниченное число доступных слотов для утилизации может поддержать рост цен.
В Бангладеш рынок показывает признаки восстановления. Покупатели проявляют интерес к доступному тоннажу, а приход нового правительства, считающегося более ориентированным на бизнес, улучшает рыночные ожидания и создаёт предпосылки для дальнейшего роста активности.
В Пакистане рынок остаётся практически без изменений. Региональная напряжённость, связанная с конфликтом вокруг Ирана, сдерживает сделки, однако отдельные покупатели продолжают проявлять интерес при ориентировочных уровнях около $410/LDT.
В Турции ситуация остаётся стабильной: цены на металлолом удерживаются на прежнем уровне, хотя увеличение числа судов-кандидатов на разделку может оказать давление на рынок в ближайшей перспективе.
📌Best Oasis Ltd. — международная компания, специализирующаяся на покупке судов для утилизации и аналитике рынка судоразделки. Компания является частной и работает как "cash buyer" на глобальном рынке.
#ShipRecycling#ScrapMarket#Shipbreaking#BestOasis#ShippingIndustry