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

Резултати

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

Пребарај: #ecoeducation

当前筛选 #ecoeducation清除筛选
Green University CA | Official

@centralasian_greenuniversity · Post #314 · 08.11.2025 г., 09:47

⏸A powerful video by our students raising awareness about the dangers of air pollution. #AirQuality#Sustainability#EcoEducation#GreenUniversity#ActNow ✉️[email protected] ☎️ +998 55 512 00 77 📍Location 🌐Website | 📱Telegram | 📱Instagram | 📱LinkedIn | 🟥YouTube

Green University CA | Official

@centralasian_greenuniversity · Post #924 · 24.03.2026 г., 13:30

🌿Scientific and Practical Seminar within the “Yashil bog‘lar” Project 🔴A scientific and practical seminar on the care, treatment, and protection of green spaces was held at Astronomy Park in Tashkent. The event was organized for school students and youth. ⏺ The seminar was hosted by the National Committee for Ecology and Climate Change in collaboration with the “Zamin” International Public Foundation. ⏺ Experts conducted theoretical and practical sessions on tree care, including mulching, sanitary and formative pruning, as well as biological methods for plant protection. ⏺ Proposals were made for planting additional shrubs and tree saplings to further enhance the greenery of the park. ⏺ Active participation included representatives from Green University, the Eco-Schools Uzbekistan project, and the Tashkent City Young Ecologists Movement. At the conclusion of the seminar, young participants and specialists emphasized the importance of sharing experiences, learning modern approaches, and strengthening cooperation to further develop green spaces in Tashkent. #YashilBoglar#GreenUzbekistan#EcoEducation#YouthForNature ___________________________ 🌿“Yashil bog‘lar” loyihasi doirasida ilmiy-amaliy seminar 🔴 Toshkentdagi Astronomiya bog‘ida yashil hududlarni parvarishlash, davolash va himoya qilishga bag‘ishlangan ilmiy-amaliy seminar bo‘lib o‘tdi. Tadbir asosan maktab o‘quvchilari va yoshlar uchun tashkil etildi. ⏺ Tadbir Ekologiya va iqlim o‘zgarishi Milliy Qo‘mitasi va “Zamin” jamoat fondi tashabbusi bilan o‘tkazildi. ⏺ Mutaxassislar daraxtlarni mulchalash, sanitariya va shakllantiruvchi kesish, shuningdek, biologik himoya usullari bo‘yicha nazariy va amaliy mashg‘ulotlar o‘tkazdilar. ⏺ Hududni yanada ko‘kalamzorlashtirish uchun buta va ko‘chatlarni ekish bo‘yicha takliflar bildirildi. ⏺ Seminarda Green University, Eco-schools Uzbekistan loyihasi, Toshkent shahar Yosh ekologlar harakati va boshqa tashkilotlar faol ishtirok etdilar. Tadbir yakunida yoshlar va mutaxassislar tajriba almashish, zamonaviy yondashuvlarni o‘rganish va Toshkentdagi yashil hududlarni rivojlantirish bo‘yicha hamkorlikni mustahkamlash zarurligini ta’kidlashdi. #YashilBoglar#GreenUzbekistan#EcoEducation#YouthForNature ✉️[email protected] ☎️ +998 55 512 00 77 📍Location 🌐Website | 📱Telegram | 📱Instagram | 📱LinkedIn | 🟥YouTube

EKOLOG.UZ| ENG

@ekologuzenglish · Post #11172 · 13.01.2026 г., 01:03

🌱🐾 Colombia passes historic “Law of Empathy”! Schools across the country will now teach children compassion for animals and respect for nature. The law requires all educational institutions — from kindergartens to high schools — to integrate ethical treatment of animals and biodiversity protection into school projects. Key points: High school students can complete community service in animal shelters and wildlife rehabilitation centers. Programs recognize animals as sentient beings — capable of feeling pain and emotions. A national network of teachers will share experiences and best practices in fostering respect for life. Senator Andrea Padilla, the law’s initiator, said: "Education saves lives and changes the world. We want new generations to grow up as fair and compassionate citizens toward all forms of life." Colombia is now one of the first Latin American countries to make humane education mandatory — a potential model for other countries worldwide! 🌎💚 #Colombia#LawOfEmpathy#AnimalProtection#EcoEducation#Bioethics☘️Read the latest environmental news on the @ekologuz page. Follow us and send your suggestions and wishes via @eklguz_bot Instagram | Facebook | Twitter | Sayt | Youtube