Установить свойства виджета в 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
🎧⤴
Apple's AI Revolution: How iPhone 16 Could Spark a Crypto Frenzy and Change Tech Forever
Apple is set to unveil its generative AI platform, Apple Intelligence, with the iPhone 16 launch on Monday. This move is expected to revitalize AI-related cryptocurrencies and potentially reshape the tech landscape. Analysts predict this could be a turning point for generative AI, boosting iPhone sales and competing with tech giants like Microsoft and Google. The announcement comes after a recent dip in AI coin values following Nvidia's stock decline, setting the stage for a possible market rebound. ► Full News (Expand)
Verse 1:
Apple's dropping iPhone 16, AI's the new scene
Intelligence built-in, tech world's gonna lean
Siri's getting smarter, threads summarized neat
Crypto market's starter, AI coins can't be beat
Chorus:
Apple Intelligence, the future's here
AI revolution, crystal clear
Coins gonna rally, don't you fear
Tech giants trembling, Apple's frontier
Verse 2:
WWDC showed off, stocks went up fifteen
Now it's time to scoff, at what others have been
Microsoft and Google, better watch their back
Apple's in the game now, innovation's on track
Chorus:
Apple Intelligence, the future's here
AI revolution, crystal clear
Coins gonna rally, don't you fear
Tech giants trembling, Apple's frontier
Verse 3:
Near Protocol, Injective, Fetch.ai on the rise
Crypto market active, as Apple amplifies
iPhone sales declining, but AI's the key
Market's realigning, new tech dynasty
Bridge:
From Cupertino to Wall Street
AI's changing the game
Apple's leading the fleet
Nothing will be the same
Chorus:
Apple Intelligence, the future's here
AI revolution, crystal clear
Coins gonna rally, don't you fear
Tech giants trembling, Apple's frontier
#AppleAI
#crypto
#TONCryptoNewsRapStyle
🎧@toncoin_rap
🍎🤖APPLE PAYS GOOGLE $1 BILLION FOR AI — SIRI GETS GEMINI BRAIN
🔹 Apple paying Google $1B annually for Gemini AI to power "more personal Siri" February 2026 🤝💰
🔹 Q1 earnings SMASH records — $143.8B revenue up 16% driven by iPhone 17 sales surge 📱📊
🔹 Deal runs until Apple builds own AI — Gemini's 1.2T parameters boost Siri capabilities 🧠⚡
🔹 Privacy-first with on-device processing — Google gets NO access to personal data 🔒✅
🔹 Apple stock down 8.8% YTD despite beat — investors demand faster AI innovation 📉🎯
Tech giants unite while Apple scrambles to catch AI leaders OpenAI 🔥🚀
#AppleAI#GoogleGemini#SiliconValley
@america
🔥 Apple на WWDC 2025: тихая ИИ-революция, о которой все заговорили!
Хотя раньше успехи Apple в ИИ часто оставались "незаметными" (особенно в фундаментальных исследованиях 🧠), а обещанный апдейт Siri и вовсе отложен до 2026 года , компания представила мощный скачок в Apple Intelligence. Ключевое — фреймворк Foundation Models, дающий разработчикам доступ к локальной ИИ-модели Apple всего в "3 строки кода" . Это открывает двери для офлайн-ИИ в сторонних приложениях с упором на приватность — без облачных затрат 💸.
▫️ Что это даст пользователям?
Настоящая магия в новых функциях:
- 🌐 Live Translation: Реальный перевод звонков, сообщений и FaceTime офлайн на 9+ языков (русского кажется нет). Данные не уходят в облако — ваши разговоры остаются приватными .
- 📸 Visual Intelligence: Поиск объектов на скриншотах через Google/Etsy + авто-заполнение календаря по событиям с экрана. Можно даже спросить у ChatGPT о контенте! .
- 💬 Сообщения: ИИ-генерация опросов для групп + фоны через Image Playground. Спам от незнакомцев — в отдельную папку .
- 📦 Apple Wallet: Автотрекинг посылок из писем — все заказы в одном месте .
- ⌚️ Workout Buddy: ИИ-тренер на Apple Watch с голосом Fitness+ тренеров. Анализирует пульс, темп, историю тренировок для персональных советов .
- 🎮 Игры: Единый хаб с челленджами и соц. фичами. Поддержка PS VR2 Sense для Vision Pro — превращает гарнитуру в игровую платформу .
- ⚡️ Shortcuts: Мощная автоматизация с ИИ — например, сравнение лекции с конспектом или генерация изображений через ChatGPT .
▫️ Почему это прорыв?
- Приватность: До 90% задач обрабатываются на устройстве. Для сложных запросов — защищённое облако Private Cloud Compute .
- Доступность: Модели работают офлайн — идеально для путешествий и зон с плохим интернетом ✈️.
- Экономия: Разработчики экономят на облачных API — значит, больше бесплатных ИИ-фич в приложениях .
▫️ Контекст:
- Раньше Apple редко афишировала ИИ-разработки, хотя её подразделения годами работали над моделями компьютерного зрения, NLP и аппаратной оптимизацией .
- В марте 2025 Apple официально перенесла релиз "умной" Siri на 2026 год, признав: "Требуется больше времени для соответствия нашим стандартам" .
- Liquid Glass (новый дизайн iOS 26) — не просто "глянец". Это фундамент для AR-очков, где ИИ и интерфейс должны работать как одно целое 👓 .
💎 Вывод: Apple сделала ставку на практичный и приватный ИИ, а не "магические" демки. И показала, что её "тихие" лаборатории (вроде проектов по сжатию нейросетей для чипов) дали результат — экосистема умнеет без шума . Ждём Siri-революции в 2026!
Подробности WWDC 2025 | История ИИ в Apple | Исследования | Отложенная Siri
Пс. Жаль, что половина из функций не будет работать в России...
#AppleAI#WWDC2025#ИскусственныйИнтеллект#Apple#Технологии
https://t.me/semasci