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

Резултати

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

Пребарај: #glint

当前筛选 #glint清除筛选
【AFF】发布/使用

@affman668 · Post #37 · 17.04.2024 г., 08:44

#Glint 購買5英鎊黃金送0.13g黃金,到手大概12-13英鎊左右 有銀行卡和多幣種賬戶 黃金實時匯率變動 註冊填寫我的邀請碼:XXMG9P-2GGV2並且使用Wise UK/UK卡入金5鎊即可,走我邀請入金5英鎊實到12.91英鎊(官方活動寫的是送0.13g黃金) 有信用秒開,無信用可能需要拍護照和要地址證明,走了我Aff的,需要地址證明可以聯繫我 App下載: https://glintpay.com/referafriend 邀請碼: XXMG9P-2GGV2 聯繫:@IEQ0Pa UID:407008460

Hashtags

【AFF】发布/使用

@affman668 · Post #35 · 17.04.2024 г., 05:25

#aff#Glint 黄金交易所 有卡和多币种账户(英镑账户、欧元账户、美元账户) 卡每日ATM取现300,消费5000 支持账户内货币转换(实时汇率) 付5镑实到13镑 入金5英镑(支持卡入金和FSP入金)填写邀请码额外获得8英镑奖励。 英国地址+英国手机号+英国节点,有信用秒开。 无信用分:拍照、护照、地址证明(参考212) London地址的话,城市写London,下面那个county 选Greater London 卡免费,快递7.99镑。不强制寄卡 (群友快递免费,但是我显示有快递费。具体可能有差异) 账户资金提取: 英镑账户:FPS 汇到英国(1天到帐) 欧元账户:Iban 汇到欧洲 美元账户:Routing Number 汇到美国 邀请码: XW4DW8-2GGV2 互得8英镑(等值黄金奖励) id: 722887698 联系:RealAustin

Hashtags

beng!

@mdmbeng · Post #1786 · 17.04.2024 г., 05:05

#Glint#黄金交易所 ⚠️灵车🚗,群友反馈,新老用户已经被审查,具体原因未知,账户已经被冻结⚠️ 有卡和多币种账户(英镑账户、欧元账户、美元账户) 卡每日ATM取现300,消费5000 支持账户内货币转换(实时汇率) 付5镑实到13镑 入金5英镑(支持卡入金和FSP入金)填写邀请码额外获得8英镑奖励。 英国地址+英国手机号+英国节点,有信用秒开。 无信用分:拍照、护照、地址证明(参考212) London地址的话,城市写London,下面那个county 选Greater London 卡免费,快递7.99镑。不强制寄卡 (群友快递免费,但是我显示有快递费。具体可能有差异) 账户资金提取: 英镑账户:FPS 汇到英国(1天到帐) 欧元账户:Iban 汇到欧洲 美元账户:Routing Number 汇到美国 频道:@mdmbeng 投稿:@mdmbeng_Bot

🛍DEX aggregator from the TON Diamonds team The team launched their Mini App of Dex Diamonds and updated the interface, now it is much more convenient and faster to “swap” tokens directly from #telegram, receiving #cashback in tokens for it ✨#GLINT. #TonDiamondsDex achieved an impressive result — more than 100,000 transactions, and a trading turnover of $50 million, and this was achieved in 8 months. Now there are several aggregators in the TON arena that provide a similar service. Let's see who comes out ahead! DexDiamondsBot | Channel