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

Пребарај: #virtualreality

当前筛选 #virtualreality清除筛选
Interesting Planet 🌍

@interesting_planet_facts · Post #836 · 30.09.2025 г., 12:11

🌎 Scientists have found that virtual reality can cause “time compression”—people often perceive sessions as shorter than reality. This effect is linked to how immersive environments alter brain attention and memory. In experiments, users underestimated durations by up to 25%. ✨ #time⚡#perception⚡#neuroscience⚡#virtualreality 👉subscribe Interesting Planet 👉more Channels ​

Machinelearning

@ai_machinelearning_big_data · Post #8145 · 27.07.2025 г., 10:50

🌍 Hunyuan3D World Model 1.0 — первая в индустрии open-source модель для генерации интерактивных 3D‑миров Команда Tencent Hunyuan представила модель, способную создавать полноценные трёхмерные сцены всего по одному описанию — тексту или изображению. 🧠 Что умеет: — Генерация 3D-сред из текста или картинки — Поддержка редактирования и симуляций в стандартных CG-пайплайнах (Blender, Unity, Unreal) — Подходит для игр, VR, цифрового контента и прототипирования живых миров Вы просто пишете: "Japanese garden at sunset" — и модель генерирует трёхмерную сцену с деревьями, прудом и мягким освещением. Эта модель может серьёзно повлиять на будущее генеративного 3D — от геймдева до виртуальных миров. 📌 Полностью открытая модель: 🟢Проект: https://3d-models.hunyuan.tencent.com/world 🟢 Онлайн-демо: https://3d.hunyuan.tencent.com/sceneTo3D 🟢GitHub: https://github.com/Tencent-Hunyuan/HunyuanWorld-1.0 🟢 Hugging Face: https://huggingface.co/tencent/HunyuanWorld-1 @ai_machinelearning_big_data #3DGeneration#GenerativeAI#TextTo3D#Hunyuan3D#TencentAI#GameDev#VirtualReality

Venture Village Wall 🦄

@venturevillagewall · Post #3408 · 18.12.2024 г., 12:10

CLO Virtual Fashion Raises $34.81M CLO Virtual Fashion successfully raised $34.81 million in funding, with a funding round occurring on December 16, 2024. For more information, visit their website: CLO Virtual Fashion. #Funding#CLOVirtualFashion#Investment#Fashion#Tech#3DModeling#VirtualReality#FashionTech#Innovation#Startup#TechFunding#Capital#December2024#Growth#Industry#Development#Design#FashionIndustry#DigitalFashion