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

Резултати

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

Пребарај: #commercio

当前筛选 #commercio清除筛选
Marx21.it

@marx21news · Post #9704 · 06.02.2026 г., 14:41

La cooperazione Cina-Regno Unito porta lavoro, innovazione e crescita sostenibile La recente visita del Primo Ministro britannico Keir Starmer in Cina ha dato un nuovo slancio alla partnership economica tra i due Paesi, dimostrando come una cooperazione pragmatica e reciprocamente vantaggiosa crei risultati tangibili per le comunità. - Energia verde: HiTHIUM investirà 200 milioni di sterline nel Regno Unito per creare 300 posti di lavoro specializzati nel settore dell'accumulo energetico. - Mobilità sostenibile: Chery Commercial Vehicles stabilirà a Liverpool il suo quartier generale europeo, sostenendo la catena di fornitura verde e creando opportunità lavorative. - Industrie creative: POP MART aprirà il suo hub regionale a Londra, portando innovazione nel mercato creativo. - Salute e innovazione: AstraZeneca rafforza il suo impegno in Cina con un investimento di 15 miliardi di sterline in ricerca e sviluppo, accelerando l'innovazione farmaceutica. Questi progetti sono possibili grazie a una relazione commerciale solida: - Commercio bilaterale di beni nel 2025: 103,7 miliardi di dollari - Stock di investimenti bilaterali: quasi 68 miliardi di dollari La cooperazione tra Cina e Regno Unito si basa su punti di forza complementari: il Regno Unito eccelle in finanza, scienza ed educazione; la Cina offre un vasto mercato, filiere industriali complete e capacità manifatturiera efficiente. In un momento in cui il protezionismo minaccia la crescita globale, questo partenariato dimostra che il libero scambio e gli investimenti costruttivi sono la via per uno sviluppo sostenibile e condiviso. #Cina#RegnoUnito#CooperazioneInternazionale#Investimenti#Sostenibilità#Innovazione#Commercio#SviluppoEconomico#Globalizzazione https://www.marx21.it/internazionale/la-vitalita-della-cooperazione-cina-regno-unito-evidenzia-il-ruolo-costruttivo-degli-investimenti-cinesi-allestero/