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

Резултати

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

Пребарај: #btcu

当前筛选 #btcu清除筛选
Crypto M - Crypto News

@CryptoM · Post #64908 · 10.04.2026 г., 09:00

🚀 Binance Launches Zero-Fee Trading for BTC/U Pair According to the announcement from Binance, the platform is introducing a zero-fee trading promotion for the BTC/U spot and margin trading pair, effective from 2026-04-17 00:00 (UTC). This promotion will run until 2026-07-16 23:59 (UTC), allowing eligible users to trade without incurring maker and taker fees on this specific pair. However, during the promotion period, trading volume on the BTC/U pair will not contribute to the VIP tier volume calculation or any Liquidity Provider programs. Additionally, BNB discounts, referral rebates, and other adjustments will not apply to this trading pair. United Stables (U) is a next-generation stablecoin backed by fully fluid assets, designed to unify fragmented liquidity across various sectors including trading, payments, DeFi, institutional settlement, and AI-driven autonomous systems. It represents a "fluid" future where value seamlessly flows between humans and AI. Notably, U is the first batch of BNBChain stablecoin to support EIP-3009 gasless authorization, facilitating efficient value transfer across ecosystems. Users should be aware that standard trading fees will resume once the promotion period concludes. Trading eligibility is subject to the user's country or region of residence, with certain jurisdictions restricted from participating. These include Canada, Cuba, Crimea Region, Iran, Netherlands, North Korea, Syria, the United States and its territories, and non-government controlled areas of Ukraine. Binance reserves the right to disqualify users involved in dishonest behavior and to amend the promotion terms at its discretion. Participants must complete account verification to engage in trading these new pairs, and the list of restricted countries may change due to legal and regulatory updates. #Binance#BTCU#ZeroFeeTrading#Cryptocurrency#Stablecoin#DeFi#BNBChain#CryptoPromotion#DigitalAssets#CryptoTrading