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

Резултати

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

Пребарај: #ss2022

当前筛选 #ss2022清除筛选
Neon-Link通知

@neon_link · Post #12 · 03.03.2025 г., 04:46

机场名:Neon-Link 类别:专线 编号:0075 #Neon-Link #广港专线#SS#SS2022#家宽#不限时#新机场 测评订阅:商家送测 简介与特色: 开业年份:2025年2月18日 在线设备:5个IP 协议类型:SS-2022 此协议部分代理软件如QuantumultX暂不支持 套餐类型:周期性+不限时 常用地区:港,台,新,日,美🏠,德 速度限制:视套餐限制100~500Mbps 解锁情况:如图 延迟与稳定性: 广港三线, 1️⃣ 电信,上乘专线 2️⃣ 移动,顶尖专线 👑 3️⃣ 联通,中等专线 联通入口据最新实测水平有所下降 ️ 入口分布: 电:穗电183 联:穗联58 移:穗移183 ❶ 拓扑显示详细地区有误 ❷ 入口视用户宽带进行DNS智能解析 落地概览: 港DMIT/HGC,台Akari,新Oracle/Eons,日WebHoriz/Akari,美Misaka/ATT,德Misaka ⚠️ 注:当前UDP测试模块出现技术故障,实测UDP全通! 整体评价: 1️⃣ 新开业机场,带宽满足日常使用水平,电/移延迟很优秀。 2️⃣ 入口三网手搓,套餐虽最高限速500Mbps,但在北方也可跑满单线程。落地质量优秀(美国ATT家宽)。 3️⃣ 但联通入口短板。加之无华东入口,导致远离入口地的日美速率严重下降接近不可用水平❗️ 4️⃣ 目前结合折后价格,是为数不多 #甜点价位 (¥0.15元上下/G 且月付≤15元) 的专线小而美之选💡 ⚡️入口临近: 单线程100~500Mb❗️ 多线程400~500Mb ⚡️远离入口: 单线程(三网)100~500Mb❗️ 具有竞争力的套餐: 折后9元100G/月(约0.09元/G) 🎫限时优惠码: 5折优惠码:开业大吉(仅限月付) 7折优惠码:Neon-Link 官网: https://www.neon-link.com 频道: https://t.me/neon_link 群组: https://t.me/neon_link_user ——————————————————————————————————— 海豚测速 致力于为您提供 优质的机场测速和评测服务,帮助您找到最适合您的翻墙机场。 海豚测速群组 @haitunspeed 机场跑路风险难控,建议谨慎选择月付

Cool Scripts

@cool_scripts · Post #643 · 19.11.2024 г., 12:54

Sub-Store 小课堂: 筛选出 Shadowsocks 2022节点 ▎脚本过滤 return ['2022-blake3-aes-128-gcm', '2022-blake3-aes-256-gcm'].includes($server.cipher) ℹ️ 相关内容 Sub-Store 相关教程/脚本整合 #SubStore#Sub-Store #小课堂#tips#协议#协议筛选#筛选#SS#SS2022#Shadowsocks#Shadowsocks2022#过滤#节点