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 слични објави

Пребарај: #stargateproject

当前筛选 #stargateproject清除筛选
Crypto M - Crypto News

@CryptoM · Post #64587 · 09.04.2026 г., 09:22

🚀 AI TRENDS | OpenAI Halts Stargate Project in UK, Plans to Resume Under Suitable Conditions OpenAI has announced the suspension of its Stargate project in the United Kingdom. According to Jin10, the company stated that it will continue with its plans in the UK once the appropriate conditions are met. The decision reflects OpenAI's strategic approach to ensure that the project aligns with its operational and regulatory standards. The Stargate project, which has garnered significant attention, is part of OpenAI's broader efforts to advance its technological initiatives globally. The company has not specified the exact conditions required for the project's resumption, leaving room for speculation about future developments. #AI#OpenAI#StargateProject#UK#Technology#RegulatoryStandards#ProjectSuspension#GlobalInitiatives#StrategicApproach

Venture Village Wall 🦄

@venturevillagewall · Post #3950 · 22.01.2025 г., 13:00

Circle Acquires Hashnote; $5.6M for Wingbits 🔍 Institutional investment management platform Hashnote acquired by Circle. 💰 Wingbits, a token-incentivized flight tracking network, raises $5.6M in a strategic funding round led by Borderless Capital and Bullish, with participation from various investors. 🔄 Significant crypto movement detected: 2,410 #BTC (worth $253M) transferred to Coinbase Institutional. ⚡ Mantle announces a financial blockchain center with a treasury of $4.3B, planning expansion of mETH and FBTC Protocols in 2025. 🌐 Mistral AI aims for IPO and opens Singapore office as part of regional expansion. 🏛️ Major U.S. Bitcoin miner MARA advocates for Bitcoin reserves in 50 states with state-level bills under consideration. 🚀 Stargate Project initiated by tech giants for AI infrastructure in the U.S., with $500 billion investment planned by 2029. 🔗Read more about Mantle's blockchain center. #Hashnote#Circle#Wingbits#Crypto#BTC#Mantle#mETH#FBTC#MistralAI#IPO#MARA#Bitcoin#StargateProject#AI#VC