TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #380 · 21 окт.

Регулярно приходится писать и ревьюить код, где используется 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

Hashtags

Резултати

Пронајдени 2 слични објави

Пребарај: #maritimerisk

当前筛选 #maritimerisk清除筛选

🚢Карта напряжения: горячие точки в судоходстве и морской логистике. Красное море и Суэц. Маршрут частично возвращается в расписания отдельных линий, но коридор остаётся зоной повышенного риска и страховой неопределённости. Рынок видит смешанные сигналы по восстановлению транзита и сохраняет повышенную волатильность по ставкам и слотам. Ормузский пролив и Персидский залив. Эскалация и военная активность вокруг Ирана поддерживают премии за риск и чувствительность танкерного рынка. Для операторов критичны скорость и возможность прохода, корректная оценка угроз и готовность к ограничениям движения. Чёрное море. Военные риски и вероятность ударов по портовой инфраструктуре продолжают влиять на доступность маршрутов и стоимость покрытия. Отдельный фактор — рост случаев навигационных помех и необходимость усиленного контроля безопасности рейса. Балтика и Восточное Средиземноморье. На ряде участков усиливается проблема GPS-jamming/spoofing, что повышает требования к bridge procedures, резервным методам навигации и управлению рисками при заходах в чувствительные зоны. Панамский канал. После «дорожной» фазы ограничений рынок адаптируется к более структурированным механизмам распределения слотов и планированию транзитов. Любые изменения гидрологии и правил бронирования быстро транслируются в цепочки поставок на направлениях Атлантика–Тихий океан. Западная Африка и отдельные районы высоких рисков. Пиратская активность глобально остаётся фактором стоимости и охраны экипажа: даже при локальных улучшениях статистики риск для моряков и судов требует поддержания процедур BMP и работы с охранными провайдерами. 📌International Maritime Organization (IMO) основана в 1948 году и является специализированным агентством ООН, формирующим международные нормы безопасности и предотвращения загрязнения с судов. Организация принадлежит системе ООН и управляется государствами-членами. #shipping#maritimerisk#Suez#Hormuz#logistics

🚢Ормузский пролив: влияние на сухогрузы, СПГ-танкеры и глобальные торговые потоки. По данным аналитической платформы Kpler, фактическая остановка транзита через Ормузский пролив начинает оказывать системное влияние на несколько сегментов морской торговли, выходя далеко за рамки нефтяного рынка. Транзит сухогрузов через пролив сократился на 91%, при этом около 280 балкеров остаются заблокированными в регионе. Наиболее затронуты балкеры типоразмеров Panamax, Supramax и Handysize, тогда как сегмент балкеров типоразмера Capesize практически не работает в этом коридоре. Ситуация влияет и на другие рынки. Персидский залив обеспечивает 16–18% мировых морских поставок удобрений и около 20% глобальной торговли СПГ. При этом терминал Ras Laffan временно остановлен, а ставки СПГ-фрахта в Атлантическом бассейне выросли более чем на $100 000 в сутки за одну торговую сессию. Дополнительным фактором риска остаются электронные помехи: с конца февраля зафиксировано более 100 инцидентов GNSS-интерференции, влияющих на навигацию и мониторинг судов. Аналитики отмечают, что текущая ситуация скорее представляет собой «коммерческое сдерживание», а не формальную блокаду. Однако последствия для глобальных цепочек поставок могут проявляться в течение нескольких месяцев, поскольку часть эффектов ещё не полностью отражена в фрахтовых индексах. 📌Kpler — международная аналитическая компания, основанная в 2014 году во Франции, специализируется на мониторинге энергетических потоков и судоходства на основе спутниковых и AIS-данных. Компания является частной и принадлежит инвестиционным фондам и основателям. #Hormuz#DryBulk#LNGShipping#Kpler#MaritimeRisk