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

TGINSIGHT SIMILAR POSTS

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

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

Установить свойства виджета в 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

Hashtags

Резултати

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

Пребарај: #elliott

当前筛选 #elliott清除筛选

🚢Elliott усиливает давление на японского гиганта: фонд вошёл в капитал Mitsui OSK Lines. Американский хедж-фонд Elliott Investment Management приобрёл «значительную» долю в Mitsui OSK Lines (MOL), усиливая давление на одного из крупнейших судовладельцев мира с целью повышения доходности для акционеров. Фонд настаивает: на пересмотре портфеля активов, включая недвижимость, на повышении эффективности использования капитала и на повторном листинге дочерней компании Daibiru. Аналитики отмечают, что Elliott считает рыночную оценку флота MOL заниженной. На фоне давления Токийской биржи - компании с низким коэффициентом "price-to-book" (у MOLоколо 0,67) - вынуждены работать над ростом капитализации. Флот Mitsui OSK Lines превышает 900 судов (танкеры, балкеры, контейнеровозы и паромы), что делает компанию одним из ключевых игроков глобального судоходства. Дополнительным фактором неопределённости остаётся геополитика: в условиях кризиса на Бл. Востоке одно из судов MOL уже получило повреждения в Персидском заливе, что усиливает давление на риски управления и оценку активов. 📌Mitsui OSK Lines (MOL) основана в 1884 году; одна из крупнейших судоходных компаний Японии. Входит в группу Mitsui keiretsu, акции торгуются на Токийской бирже, основными акционерами являются институциональные инвесторы и японские финансовые группы. 📌Elliott Investment Management основана в 1977 году американским инвестором Полом Сингером (Paul Singer). Один из крупнейших в мире хедж-фондов, управляет активами ок $100 млрд. Компания в частной собственности и контролируется основателем и партнёрами фонда. #Shipping#MOL#Elliott#MaritimeFinance#CorporateGovernance

Venture Village Wall 🦄

@venturevillagewall · Post #4037 · 31.01.2025 г., 10:00

Elliott Warns of Crypto Bubble Risks Hedge Fund Elliott cautions the White House's economic policies may be inflating a Crypto bubble, potentially causing future market turmoil. Meanwhile, significant transfers of BTC took place, including 2,800,000 in multiple occurrences. Upbit prepares to launch VIRTUAL trading pairs, while BlackRock and Fidelity lead strong inflows in Bitcoin Spot ETFs. Tether's USDT will be integrated into Bitcoin's Lightning Network. For more details, check the articles linked: - Elliott's Crypto Warning - Whale Alert BTC Transfer - BlackRock BTC Purchases #Crypto#Elliott#Bitcoin#BlackRock#Fidelity#ETFs#WhaleAlert#Tether#LightningNetwork#Upbit#MarketTrends#Investing#Finance#RiskManagement#AI#VC