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 слични објави

Пребарај: #bscgem

当前筛选 #bscgem清除筛选
Airdrop Strikers™

@airdropstrikers · Post #857 · 19.12.2022 г., 17:59

​New #BSCGem 🔰 Name : MIRTOKEN 🥞 Status : Listed on Pancakeswap ⭐️ Rating by BSC Newspaper : 10/10✅ 1) Introduction MIR is a BEP 20 Token, created to develop and test solutions to ease financial transactions between Africa and Russia. The token would be used to purchase the Ultra-servers, no other payment methods would be allowed. The token will also represent the health of the project, as the number of server sales will impact the price of the currency on the market. MIR is a Token to fund the future of Blockchain, an optimization model of two types: READ MORE 2) Token Info Token Name: Mir Token Token Symbol: MIR Token Network: Smartchain Token Total Supply: 10.000.000.000 MIR Social : ▪️Twitter ▪️Telegram News ▪️Telegram Group Links : ▪️Website ▪️Whitepaper ▪️Smartcontract ▪️Learn on Coinvote ▪️Learn on Gemsradar ▪️Buy Mirtoken on Pancakeswap If you have any kind of question don't hesitate to ask happily we will answer all kind of questions 🤝

Hashtags

Crypto Fight || News 🚀

@cryptofightnews · Post #2688 · 06.05.2025 г., 00:23

$QUIT Token Sale is LIVE! Elon quit. So did we. Now it’s your turn to quit the old coins and ape into the most savage meme of 2025. Token: $QUIT Chain: BSC Rugproof. No mercy. Full send. You’re not early—you’re right on time. #ElonQuit#quitToken#Quit#memecoin#BSCGem#crypto

🚀 $PALUON is PUMPING hard! 🤪 The chart is going crazy and new investors are jumping in fast 💎 This is the next big BSC gem everyone’s talking about! 💰 Smart money is already here — don’t miss your chance! 📈Chart: https://dexscreener.com/bsc/0x126FAdb82cc4aB91E6cd03ACcAf209fB6d1FFaab 🌐Website: https://paluonbnb.com/ ❌X. https://x.com/palucto 📌CA: 0x02e75d28A8AA2a0033b8cf866fCf0bB0E1eE4444 The hype is real — chart is just getting started! 🔥 $PALUON to the moon! 🌕 #PALUON#BSCGem#Crypto#DeFi#BullRun#PumpIt#MoonMission