Для тех кто пишет расширения на PyQt/PySide для CG-софтов.
Когда я только начинал писать тулзы под Maya (тогда еще версия 2010-2011) мне приходилось ручками ставить PyQt4 под Maya. Даже написал мануалы по установке на своём сайте. Но потом стал доступен из коробки PySide и позже он обновится до PySide2. Для некоторых систем была поддержка PyQt5.
И как простому разработчику поддерживать этот зоопарк? Ведь хочется чтобы тул работал на любой версии (вы тоже делали модуль что-то типа import_qt.py?😁)
На помощь приходит проект Qt.py который поставил себе цель унифицировать использование Qt-биндингов вне зависимости от среды где запускается код. Те, кто давно пишут на Qt, скорее всего знают этот проект.
Он стал стандартом для CG-индустрии и используется в топовых студиях и проектах.
Qt․py помогает запускать один и тот же код на разных платформах с разными вариантами Qt-библиотек. Это может быть как интеграция в CG-софт, так и переносимость стендалонов между разными платформами с разными версиями Python.
Я решил рассказать о некоторых особенностях работы с этой библиотекой.
Сегодня о том, как установить и использовать Qt․py и что это вам даёт.
Установка
pip install Qt.py
Чтобы начать использовать Qt․py в коде достаточно заменить импорт вашего варианта Qt-биндинга на Qt․py
from [PySide|PyQt4|PySide2|PyQt5] import QtWidgets
=>
from Qt import QtWidgets
Теперь ваш код будет поддерживать любой вариант биндинга Qt в Python.
При этом не потребуется использовать if-else конструкции под разные версии. Все вызовы теперь одинаковы.
Всё что нужно сделать, это написать его по правилам PySide2. Именно эта версия была взята за основу.
Приоритет импорта такой:
1. PySide2
2. PyQt5
3. PySide
4. PyQt4
Что именно загрузилось можно посмотреть в переменной __binding__
>>> import Qt
>>> Qt.__binding__
'PySide2'
Приоритет имопрта можно изменить через переменные QT_PREFERRED_BINDING и QT_PREFERRED_BINDING_JSON. Причем под каждый проект оверрайды можно настраивать индивидеально.
#qt#libs
설날 맞이 UXLINK 한국인 홀더 이벤트
🔥 $10,000 (100 USDT x 100명)
📅 1/27~ 2/10 16:00까지
#UXLINK 홀더 인증, 응원글 및 로고 작성 후 #UXLINKEVENT 태그 달아 올리면 끝!
💡 홀더 인증하고 새뱃돈 가져가자!
👉 홀더라면 참여하지 않을 수 없는 이벤트!
https://forms.gle/rntCL5CYSsDRGwgE7
#UXLINK#UXLINKEVENT#CryptoEvent#FreeRewards
UXLINK"를 찾아라 이벤트
🔥 5,000 USDT + 100,000 UXUY 쏜다! (700만 원 상당💸)
📅 11/21 ~ 12/20
#UXLINK 광고 찍고 #UXLINKEVENT 태그 달아 올리면 끝!
💡 UX Wallet 제출하면 당첨 확률 UP
👉 지금 참여 안 하면 NGMI!
https://forms.gle/mwdapWAhV2WDcmFF7
#UXLINK#UXLINKEVENT#CryptoEvent#FreeRewards
🚀Exciting News for SLEXians! 🚀
✨We're thrilled to announce that the SLEX platform will be a part of the outstanding Token2049 event in Singapore on September 13-14! 🌏
🌐Token2049 is a premier crypto and blockchain conference that brings together industry leaders, innovators, and enthusiasts worldwide. It's a hub for networking, knowledge-sharing, and staying ahead of the latest trends in the crypto space.
👥We invite our community members to join us at the event, either in person or virtually, to learn more about the SLEX platform features and engage with fellow crypto enthusiasts.
💫Save the dates, and let's make this event memorable together!🗓️
#SLEX#Token2049#CryptoEvent#CryptoTrading#Blockchain#Singapore
Email | Telegram | Reddit | Facebook | Instagram | Medium | Linkedin | Twitter
🚀 GENIUS Airdrop Opens on Binance Alpha: 240 Tokens for Users With 230+ Alpha Points
According to Binance Wallet's post on X, Binance Alpha will debut Genius Foundation (GENIUS) on April 13, 2026, at 11:00 UTC, making it the first platform to list the token. Users holding at least 230 Binance Alpha Points may claim a 240-GENIUS airdrop on a first-come, first-served basis; claiming consumes 15 Alpha Points. If the reward pool remains undistributed, the points threshold automatically drops by 5 every 5 minutes. Claims must be confirmed on the Alpha Events page within 24 hours or are forfeited.
#GENIUSAirdrop#BinanceAlpha#GeniusFoundation#Airdrop#Crypto#AlphaPoints#Binance#Token#Blockchain#CryptoEvent
🚀 Binance to Launch RateX Trading Competition with Token Rewards
According to the announcement from Binance, the platform is set to introduce the RateX Trading Competition on Binance Alpha. This event will take place over two distinct promotion periods, offering participants the opportunity to earn exclusive token rewards. The first promotion period is scheduled from 2026-04-09 13:00 (UTC) to 2026-04-16 13:00 (UTC), followed by the second from 2026-04-16 13:00 (UTC) to 2026-04-23 13:00 (UTC). Participants will be ranked based on their total purchase volume of RateX (RTX) tokens during each period. The top 2,040 users in each period will share a pool of 61,200 RTX tokens, with each eligible participant receiving 30 RTX tokens.
Participation in the competition requires trading through Binance Wallet (Keyless) or Binance Alpha, as third-party dApp transactions are excluded. Only cumulative purchases will count, with no volume caps imposed on participants. However, token bridging transactions are not eligible. Notably, trading volume from Alpha-to-Alpha token pairs will not contribute to Alpha Points or competition rankings, effective from 2025-06-17 00:00 (UTC). Rewards will be distributed in RTX tokens and must be claimed by eligible users before 2026-05-07 13:00:00 (UTC). Unclaimed rewards within 14 days will be forfeited.
To participate, users must click 'Join' on the Binance App event page, ensuring their trading volume is counted. The latest version of the Binance App and a backed-up Binance Wallet (Keyless) are required. Rankings will be calculated automatically post-promotion, and winners can claim rewards via their Binance Alpha accounts or Binance Wallet (Keyless). Binance reserves the right to amend the terms of the competition at its discretion.
#Binance#RateX#TradingCompetition#TokenRewards#CryptoEvent#BinanceAlpha#RTX#TokenDistribution#BinanceWallet#TradingVolume#CryptoPromotion#TokenBridging#CompetitionRanking#AlphaPoints#BinanceApp#Keyless