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

Резултати

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

Пребарај: #gew2023

当前筛选 #gew2023清除筛选
Стартап слезам не верит

@startupslezamneverit · Post #786 · 13.11.2023 г., 09:31

Мастер-класс по ораторскому искусству в рамках недели предпринимательства🎙 Любому предпринимателю важно уметь презентовать себя и свои проекты. Мы в MOST видели не одну слабо подготовленную презентацию, которая портила впечатления о всем проекте в целом. Поэтому мы устраиваем мастер-класс совместно с ораторским клубом @orator_club . Спикером встречи выступит Ильяс Батыров - предприниматель, оратор и бизнес-тренер. Ильяс является тренером спикеров TEDx, основателем первого в Казахстане Клуба Ораторов и сооснователем Toastmaster Almaty⚡ ⏰ Дата: 15 ноября, 19:00 📍Адрес: г. Алматы, Ходжанова 2/2, MOST IT Hub, 1 этаж, конференц-зал ✅Вход бесплатный, но важно пройти регистрацию по ссылке https://forms.gle/U1A3gykicZMy6tax7 #GEW2023

Hashtags

Стартап слезам не верит

@startupslezamneverit · Post #782 · 07.11.2023 г., 08:17

С 9-17 ноября в MOST IT Hub начинается международная неделя предпринимательства в рамках Global Entrepreneurship Week! На протяжении недели в хабе будут проводится воркшопы, митапы, панельные сессии и стартап баттлы🔥 14 ноября пройдет открытый митап, посвященный управлением командой. Правильное управление командой является важным аспектом для успеха в любом проекте. Поделится своим опытом работы с командой CEO redmadrobot Central Asia - Агиис Конкабаева. У Агиис более 10 лет управленческого опыта в направлении SME, CX, Digital. До перехода в redmadrobot Central Asia управляла разработкой в «Альфа-Банк Казахстан» в блоке малого бизнеса: руководила 15-ю agile-командами с более чем 160 разработчиками. В ее опыте более 7 крупных IT-проектов 🙌🏻 ⏰Дата: 14 ноября, 19:00 📍Адрес: г.Алматы, Ходжанова 2/2, MOST IT Hub, 1 этаж, конференц-зал ✅Вход свободный, ссылка на регистрацию: https://forms.gle/TRcedQMV8pH7Dgmx5 #GEW2023

Hashtags

Ziyo Forum Volunteers

@ziyoforumvollonteri · Post #225 · 27.11.2023 г., 09:17

🌟Знакомьтесь со спикерами 3-дня Global Entrepreneurship Week Сессия 1 10:30-12:00 Циклическое производство и осознанное потребление 🗓️Отметьте в календаре 29 ноября 📍Место встречи: Smart Assessment В рамках 1 сессии 3 дня, будет организована панельная дискуссия с представителями локальных специалистов, занимающихся проектами в сфере повторной переработки. Каждый из проектов уникален и направлен на сохранение окружающей среды. Если ты хочешь узнать больше о производстве экологичных продуктов и их реализации - регистрируйся на нашу панельную дискуссию! Не упустите шанс расширить свой бизнес-круг, узнать о последних трендах и найти вдохновение для своих предпринимательских начинаний.💡 Ссылка для регистрации #ziyoforum#gew2023

Yoshlar Markazi | Ziyo Forum

@YouthCenterZiyo · Post #43 · 25.11.2023 г., 06:38

🚀 Join Us for Global Entrepreneurship Week! 📅November 29, 2023 🕙10:00 AM 📍Smart Assessment Global Entrepreneurship Week is your opportunity to connect with inspiring entrepreneurs, exchange ideas, and discuss the future of business. Join us at Ziyo Forum for engaging presentations, panel discussions, and more! Annually GEW brings together 10 million people over 160 countries 🤩 Don't miss the chance to expand your business network, learn about the latest trends, and find inspiration for your entrepreneurial endeavors. 💡Registration is open! Sign up now and be part of the global entrepreneurial community! 🔸 GEW 2023 will take place from November 27 to December 2nd of 2023 🤝Partners: TEAM University, GroundZero Coworking, the Embassy of Switzerland in Uzbekistan and many more. #GEW2023#Entrepreneurship#ZiyoForum