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

Пребарај: #rusiacelac

当前筛选 #rusiacelac清除筛选
Noticias de LAD🇷🇺

@LAD_MAERusia · Post #22687 · 23.02.2026 г., 18:43

🗓Hoy se cumple 1️⃣6️⃣ años del acuerdo del establecimiento de la #CELAC 🌎 La Comunidad de Estados Latinoamericanos y Caribeños (la CELAC) es la mayor agrupación regional de América Latina y el Caribe. Abarca a los 33 Estados que tienen diferentes corrientes políticas e ideológicas, pero los que están unidos en la búsqueda de una integración regional equilibrada y democrática. #TalDíaComoHoy, en 2010, durante la II Cumbre de América Latina y el Caribe sobre Integración y Desarrollo, celebrada en México, se acordó crear este nuevo organismo, con el fin de reunir a todos los Estados Latinoamericanos y Caribeños. Posteriormente, en Venezuela, durante la Cumbre de Caracas del 3 de diciembre de 2011, fue constituida definitivamente la CELAC. La creación de la unión fue un resultado de varias instancias multilaterales establecidas por los países latinoamericanos para buscar la paz, el desarrollo social y económico, así como la integración regional. Durante estos 16 años, la unión ha sido un instrumento importante para fortalecer la participación de América Latina y el Caribe en la cooperación extrarregional y el diálogo político global frente a los diferentes desafíos del actual sistema económico, social y político que busca un desarrollo equitativo, y se ha concretado en sus esfuerzos. 🇷🇺#RusiaCELAC En el año 2015, Rusia y CELAC establecieron un mecanismo permanente de diálogo político y cooperaciónRusia-CELAC. Entre los formatos más eficaces de la interacción se destacaban las reuniones ministeriales entre Rusia y el "Cuarteto" de países de la CELAC. Rusia ha abogado y sigue apoyando la consolidación de los procesos de la integración regional en América Latina y el Caribe, incluso sobre la base de la agrupación influyente de la CELAC, que refleja la aspiración regional común a la unidad. A Rusia y la CELAC les une la comprensión de la necesidad de formar un orden mundial multipolarmás justo y democrático, basado en la primacía del Derecho Internacional, así como el interés mutuo en desarrollar las relaciones multilaterales equitativas. 🤝¡Felicitamos a nuestros colegas de la CELAC con esta fecha importante, les deseamos muchos éxitos en el logro de sus objetivos! #RusiaAméricaLatina