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

Резултати

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

Пребарај: #interestrate

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

@CryptoM · Post #64632 · 09.04.2026 г., 12:05

🚀 Poland's Central Bank Keeps Benchmark Rate Unchanged at 3.75% Poland's central bank has decided to maintain its benchmark interest rate at 3.75%, aligning with market expectations. According to Jin10, this decision reflects the bank's current monetary policy stance amid ongoing economic conditions. The unchanged rate suggests a cautious approach as the bank monitors inflationary pressures and economic growth. This move is consistent with the central bank's efforts to balance economic stability and inflation control. #Poland#CentralBank#InterestRate#MonetaryPolicy#Inflation#EconomicGrowth#EconomicStability

Crypto M - Crypto News

@CryptoM · Post #64815 · 10.04.2026 г., 01:43

🚀 South Korea Maintains Key Interest Rate Amid Economic Resilience South Korea's central bank announced on April 10 that it will keep the seven-day repo rate unchanged at 2.5%, continuing its steady policy stance since July last year, in line with market expectations. According to Jin10, this decision comes amid stable inflation and relatively resilient economic growth. In March, South Korea's consumer prices rose by 2.2% year-on-year, slightly up from February's 2% increase, yet still close to the central bank's target level. In February, the central bank had already raised its growth outlook for 2026. However, the ongoing Middle East conflict is posing risks to both inflation and growth. As a major importer heavily reliant on Middle Eastern energy, South Korea faces rising import costs due to global oil and gas price hikes. Additionally, the South Korean won has weakened significantly in recent weeks, influenced by foreign capital outflows and rising oil prices. Despite these challenges, South Korea's economic growth remains resilient. March exports showed strong momentum, driven by record demand for AI-related semiconductors and robust exports to China. #SouthKorea#InterestRate#EconomicGrowth#Inflation#CentralBank#Exports#AI#Semiconductors#OilPrices#Currency#MiddleEastConflict

Crypto M - Crypto News

@CryptoM · Post #65153 · 11.04.2026 г., 13:14

🚀 Middle East Conflict and Rising Oil Prices Impact Crypto Market The ongoing conflict in the Middle East and increasing crude oil prices are influencing the cryptocurrency market through interest-rate and risk channels. According to NS3.AI, these developments are contributing to bear market pressures. Additionally, Hong Kong's stablecoin licensing, disputes over prediction market rules, and Hyperliquid's crude oil trading are emerging as significant themes in the current market landscape. #MiddleEastConflict#RisingOilPrices#CryptoMarket#InterestRate#RiskChannels#BearMarket#NS3AI#StablecoinLicensing#PredictionMarket#Hyperliquid#CrudeOilTrading