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

Резултати

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

Пребарај: #peacenegotiations

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

@CryptoM · Post #65310 · 12.04.2026 г., 20:05

🚀 Global Markets Brace for Volatility Amid Renewed Iran Conflict Concerns The potential resurgence of conflict in Iran following unsuccessful peace negotiations is raising concerns about increased volatility in global markets. Bloomberg posted on X that the recent fragile ceasefire had previously led to a significant rise in stock prices and a notable decrease in oil prices, marking the largest shifts seen this year. However, with the peace talks failing, market stability is once again under threat, prompting investors to brace for potential fluctuations. #GlobalMarkets#Volatility#IranConflict#PeaceNegotiations#OilPrices#StockMarket#Investors#MarketStability

Crypto M - Crypto News

@CryptoM · Post #65376 · 13.04.2026 г., 03:04

🚀 AI Technology Presents New Opportunities Amid Potential Financial Crisis On April 13, Liquid Capital founder Yi Lihua expressed optimism about the potential resolution of ongoing conflicts, noting that motivations for continued warfare are diminishing. According to BlockBeats, Yi emphasized that peace negotiations typically evolve from disagreement to consensus, suggesting that the conflict may gradually come to an end. He remarked that both sides have no reason to continue fighting, and the moment an agreement is reached could signal a positive market shift. Yi highlighted that, in the medium to long term, the market is anticipating a potential large-scale financial crisis. He observed defensive strategies in the financial sector, such as major capital holding high cash ratios and sovereign entities increasing gold reserves. In this context, if another crisis occurs, it will be a crucial test for Bitcoin's status as a safe-haven asset and may offer significant opportunities for low-level investment. Furthermore, Yi Lihua believes that AI technology is creating new opportunities for talented entrepreneurs. He noted that small teams can develop global products, reducing costs associated with financing and organizational management. Experienced serial entrepreneurs, in particular, should seize the opportunities presented by this "AI Age of Exploration." #AI#FinancialCrisis#Investment#Bitcoin#Entrepreneurship#Innovation#MarketOpportunities#Technology#PeaceNegotiations#GlobalProducts#BTC

Crypto M - Crypto News

@CryptoM · Post #65062 · 10.04.2026 г., 17:45

🚀 Iran's Leadership Revamp Amid Peace Talks with the US The ongoing conflict in Iran has prompted significant changes in the nation's leadership structure. Bloomberg posted on X that the Revolutionary Guards are set to play a pivotal role in the upcoming peace negotiations with the United States this weekend. This shift in power dynamics underscores the growing influence of the Revolutionary Guards in Iran's political landscape. The talks are expected to address key issues surrounding the conflict and aim to establish a framework for peace. Observers are closely watching how the involvement of the Revolutionary Guards will impact the discussions and the potential outcomes of these negotiations. #Iran#LeadershipRevamp#PeaceTalks#RevolutionaryGuards#USIranRelations#PoliticalLandscape#ConflictResolution#IranPolitics#PeaceNegotiations

Crypto M - Crypto News

@CryptoM · Post #65331 · 12.04.2026 г., 23:34

🚀 Middle East Nations Urge U.S. and Iran to Resume Talks After Failed Peace Negotiations According to BlockBeats, on April 13, The Wall Street Journal reported that following unsuccessful marathon peace talks in Islamabad, Middle Eastern countries are urging the United States and Iran to return to negotiations. Despite both sides issuing strong statements, diplomatic channels remain open, and a second round of talks could occur within days. Regional nations are in discussions with the U.S. to extend the fragile two-week ceasefire announced on Tuesday evening. Iranian officials have proposed alternative suggestions, such as continuing symbolic uranium enrichment activities or reducing their enriched uranium stockpile, but no compromise has been reached. #MiddleEast#USIranTalks#PeaceNegotiations#Diplomacy#Ceasefire#IranUranium#BlockBeats#Islamabad#Iran#MiddleEasternNations#WallStreetJournal