Установить свойства виджета в 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
Composo Secures $2M Funding
Composo raises $2M to enhance data-driven evaluations for LLM applications. Their focus is on optimizing prompts, models, and architecture for improved performance.
#Funding#Composo#LLM#DataDriven#AI#Tech
Will BTS’ March album pre-orders exceed 6,000,000 by Feb 28?
At this scale, outcomes don’t appear suddenly —
they form through visible signals long before confirmation.
EdgeMarket tracks how expectations converge.
Hashtags:
#BTS#MarketSignals#DecisionIntelligence#EdgeMarket#DataDriven#CulturalTrends
🛫Как заполнить рейсы, когда времени на разгон нет?
Centrum Air нашли точку контакта именно там, где клиент уже думает о путешествии.
А эксперты VEON AdTech подключили нужные алгоритмы.
😮 Что произошло дальше — вы вряд ли увидите на классических платформах.
Подробности — в кейсе 👇
https://bit.ly/4mYwuIL
https://veonadtech.com/ru
#VEONAdTech#CentrumAir#TravelMarketing#VEONAds#AdTech#CaseStudy#DataDriven
Hive Power Secures $3.68M Round
Hive Power raised $3.68M on December 16, 2024. Their AI engine, FLEXO, optimizes grid connections, enhancing Energy Communities and Smart EV Charging solutions.
#HivePower#Funding#AI#Energy#EV#SmartCharging#DataDriven#FLEXO#GridOptimization#EnergyCommunities
⭐ Реклама в мессенджерах: Телеграм новая рекламная арена?
📱 Telegram это уже не просто чат. В Узбекистане он стал главным daily feed:
новости, покупки, комьюнити, мемы — всё в одном приложении. И да, бренды теперь тоже здесь.
👀 Чтобы проверить, насколько платформа вышла за рамки привычного мессенджера, мы проанализировали агрегированную статистику наших данных — делимся инсайтами:
👥 Приложение собирает более 4 млн активных пользователей ежемесячно — это примерно на 8% больше, чем у Instagram, и сопоставимо с Facebook.
📤 По частоте заходов, оно также лидирует: наши пользователи открывают его в 1,5–2 раза чаще, чем WhatsApp, и в 1,2 раза чаще, чем Instagram.
☝️ Разница не только в цифрах. Telegram действительно стал больше чем просто «чат», сегодня это и привычка общения, и поток контента.
Именно поэтому и реклама здесь появляется не «где-то в ленте», а там, где пользователь уже проводит своё время каждый день.
📩 Хотите узнать, как это меняет эффективность РК?
Расскажем в следующем посте👇
https://veonadtech.com/ru
#VEONAdTech#TelegramAds#DigitalMarketing#SmartAdvertising#MessagingApps#DataDriven
#MarketingInsights#AttentionEconomy
👋👋Всё о digital-рекламе в Узбекистане: аналитика, лайфхаки и готовые решения.
Когда вы на шаг впереди — вам не нужно кричать, чтобы вас заметили🤭
В VEON AdTech:
🏎 Никакой гонки за вниманием.
🎰 Никакой ставки на «повезёт — увидит».
🧐 Никаких «шумов» на фоне
Объявление появляется не поверх интерфейса,
а внутри маршрута пользователя:
✔️ интерес ✔️
✔️действие ✔️
✔️ решение✔️
💬 А вы хотите войти в момент, когда внимание не нужно завоёвывать — а достаточно просто быть на месте?
https://veonadtech.com/ru
#VEONAdTech#DigitalMarketing#AttentionEconomy#AdTech#SmartAdvertising#DataDriven#CustomerJourney#PerformanceMarketing#PrecisionTargeting
🔄VEON AdTech digital расширяет свою экосистемуVEON Ads стратегическим подключением финтех сервиса Beepul, мобильного приложения связи OQи супераппа hambi — это платформы, которые ежедневно используют миллионы узбекистанцев.
ℹ️Что получают бренды?
🆕 Еще больше форматов для показа рекламных сообщений
👀 Высокую вовлечённость пользователей
🎯 Точное попадание в целевую аудиторию
Узнайте, как это работает 👇
🖥https://uznews.uz/ru/news/103508
https://veonadtech.com/ru
#VEONAdTech#VEONAds#AdTech#DigitalMarketing#Beepul#OQ#hambi#Ecosystem#DataDriven
🚀 VEON Ads
Это развитая экосистема с умной логикой показа и прозрачной аналитикой.
Каждая интеграция усиливает не просто охват, а управляемость.
Вы знаете, кому, где и зачем показалось объявление.
📊 Реклама видима!
⚙️ Механика понятна!
👥 Поведение подтверждено!
Это и есть главное отличие:
VEON Ads — это не рынок рекламы.
Это система принятия верных решений.
https://veonadtech.com/ru
#VEONAds#VEONAdTech#DigitalMarketing#AdTech#SmartAdvertising#DataDriven#MarketingAnalytics#PerformanceMarketing#AttentionEconomy#CustomerJourney
🤝VEON AdTech и Jazz Pakistan: технологическое партнёрство в области цифровой рекламы.
На мероприятии VEON Ignite состоялось подписание стратегического Меморандума между VEON AdTech и Jazz Pakistan.
Этот документ фиксирует новый этап сотрудничества компаний, направленный на развитие рекламных технологий, повышение эффективности медийных инструментов и укрепление цифровой инфраструктуры Пакистана.
Иван Масютин, CEO VEON AdTech, отметил:
«Наше партнёрство с Jazz Pakistan - это не просто расширение сотрудничества, а системная работа над тем, чтобы создать в регионе технологическую среду, где данные, решения и креатив работают на реальный рост бизнеса. Мы видим большой потенциал Пакистана и готовы усиливать его развитие через инновации VEON AdTech».
🪙Ключевые направления Меморандума:
- развитие долгосрочной стратегической модели партнёрства;
- унификация технических процессов и стандартов;
- единый подход к медиа-планированию и эффективности кампаний;
- интеграция полного спектра решений VEON AdTech - от технологий и аналитики до креатива и реализации кампаний.
🔝Для Jazz Pakistan партнёрство открывает доступ к глобальной экспертизе VEON AdTech, включая рекламные технологии, data-решения и продуктовые подходы.
Для VEON AdTech - это усиление роли регионального хаба и расширение совместных проектов на рынке Пакистана.
Меморандум создаёт основу для дальнейшего роста digital-экономики страны и формирует устойчивую платформу для развития рекламного рынка.
#VEONAdTech#JazzPakistan#StrategicPartnership#AdTechInnovation#MediaEfficiency#DigitalInfrastructure#DataDriven#DigitalGrowth
📊Почему реклама в Telegram показывает другие цифры
📱 В прошлом посте мы рассказали: Telegram > мессенджер.
Следующий шаг — посмотреть, что это значит для брендов.
🪙 На основе наших запусков РК мы сравнили, как реклама в Telegram отрабатывает в цифрах — на фоне привычных digital-платформ.
Что показал анализ:
⬇️ Реклама в TG ещё непривычна → внимание выше, меньше «баннерной слепоты»
📤 Формат похож на обычное сообщение → доверия больше
📈 CTR в Telegram в 2–4 раза опередил привычные медийные форматы
📉 CPA оказался до 3 раз ниже среднего по рынку
🫴 Цена за лид в среднем была в 3–5 раз меньше.
⚡️ Эти результаты показывают: Telegram Ads эффективен не потому, что это «ещё один новый канал», а потому что реклама здесь привычна для поведения пользователя.
https://veonadtech.com/ru
#VEONAdTech#TelegramAds#AdTech#DigitalMarketing#SmartAdvertising#DataDriven#MarketingInsights#PerformanceMarketing#AttentionEconomy#CustomerEngagement
👋👋Всё о digital-рекламе в Узбекистане: аналитика, лайфхаки и готовые решения.
🆒 Экосистема VEON Ads стала еще шире: теперь в ней платежное приложение Beepul
Это цифровая среда, где пользователь уже настроен на действие — и точно знает, что делает.
Что это дает бренду?
😎 Не просто охват, а контекст в моменте действия
🥇 Не баннер, а уместное предложение
🗺 Не «в любом месте», а там, где это нужно
VEON Ads продолжает расти:
Мы наращиваем не количество показов — мы усиливаем качество точек взаимодействия.🏆
Хотите, чтобы ваше сообщение появлялось не «где-нибудь», а именно в момент решения?
📩 Пишите и мы обсудим, где это возможно.
https://veonadtech.com/ru
#VEONAdTech#VEONAds#Beepul#DigitalMarketing#AdTech#Ecosystem#UserEngagement#TargetedAdvertising#MarketingInnovation#DataDriven
👋👋Всё о digital-рекламе в Узбекистане: аналитика, лайфхаки и готовые решения.
Всем привет!
Мы в Okko расширяем департамент анализа данных. Сейчас в команде больше 50 человек, мы продолжаем расти, совершенствуя работу с данными, в т.ч. рекомендательную систему. Поэтому ищем близких по духу людей, вместе с которыми создадим принципиально новый подход к зрительскому опыту.
Мы ждем Data Scientists, Data Analysts, Data Engineers, Python Developers и т.д. уровня middle+/senior. Можно выбрать направление – «Платформа экспериментов», «Рекомендации», «Поиск», «Монетизация», «Growth», «Контент», «Техническая команда».
Сделали страничку со всеми подробностями, там же можно откликнуться на понравившуюся вакансию: https://analytics.okko.tv/
Ждем твой отклик
#data#datascientists#dataanalysts#dataengineers#ds#da#de#ml#recsys#recommendations#search#datadriven#AB#growth#okko