@Ptfxq · Post #240 · 24.08.2021 г., 08:48
#CHD 一年一度的站庆来了
Hashtags
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
Пребарај: #chd
@Ptfxq · Post #240 · 24.08.2021 г., 08:48
#CHD 一年一度的站庆来了
Hashtags
@Ptfxq · Post #182 · 12.04.2021 г., 02:26
#CHD BHYS 离开 CHD 事件仍在持续发酵。 CHD 站长在论坛公告区发布长文,抨击了 BHYS 在自己粉丝群发布自己作品的行为,措辞激动。 目前该贴已被移动至黑名单区,仅管理可见。
Hashtags
@Ptfxq · Post #169 · 06.04.2021 г., 10:17
#CHD BHYS 离开 CHD 工作组,详情见官方 Q 群通知。
Hashtags
@Ptfxq · Post #65 · 29.01.2021 г., 14:40
#CHD 内站纷纷关闭正常登录页面后,只有极个别站点没有提供任何登录渠道。(具体请看置顶“关闭正常登录的内站及登录方法”) 虽然 CHD 的管理在 QQ 群和 TG 群曾发布临时登录链接,但频率远远不足以让会员正常登录。 近日, PT 风向旗接到匿名投稿,CHD 的一名捐赠会员向站长索要临时登录链接被拒绝。CHD 站长表示“不要把自己太当回事”,并永久封禁该会员的账号和 IP 地址。
Hashtags
@Ptfxq · Post #17 · 06.01.2021 г., 05:29
#CHD 即将启用 H&R 系统 与往年不同,2020 年终考核没有来临,CHD 也即将兑现四周年寄语中废除考核机制,用 H&R 系统代替的承诺。 然而在四周年寄语中,CHD 变相承认了考核是为了能让更多用户捐款,废除考核机制也仅仅因为疫情影响导致购片成本大幅降低。 CHD 能否永久废除考核机制?又或者将出台其他规则限制普通用户?让我们拭目以待
Hashtags
@Ptfxq · Post #472 · 07.11.2023 г., 03:01
#CHD#开放邀请 11.11-11.13 临时开放VIP邀请权限,请规范发药,卖邀交换邀请一律砍树。
@Ptfxq · Post #417 · 13.12.2022 г., 11:38
#CHD#开放邀请 "12.13-12.15 开放 Vip 邀请权限 请规范发药 卖药者一律 ban!"
@Ptfxq · Post #734 · 22.09.2024 г., 04:01
#CHDBits#CHD 因为遭受攻击,CHD 开启了 CF 盾。 根据群友反馈,也有部分其他站点遭到了攻击并开启了盾。希望出现站点访问困难,tracker 无法连接的各位用户知悉这一情况。
@Ptfxq · Post #713 · 24.08.2024 г., 16:06
#CHDBits#CHD 八周年站庆活动 1.8.26-8.28 全站免费放血三天。 2.8.26开放VIP邀请一天。 3.注册满三周年以上会员可申请7折永V 具体发送邮件到[email protected] 提交账号信息审核并申请。
@Ptfxq · Post #712 · 24.08.2024 г., 15:00
#CHDBits#CHD HR规则恢复以及调整补充公告 1、三级置顶,标有H3、H5字样的种子均为HR种子。 2、HR种子下载大于等于50%时需要完成规定的保种时间,H3要求下载后20天内保种时间必须达到72小时,H5为20天内保种必须达到120小时。 3、HR种子未达标即扣除一个HP点,HP点数为0账号进入下载受限模式,失去下载权限。 4、HP初始值即封顶值为5,HP值为0或小于0的账号将失去下载权限 超过20天未转正将自动被系统封禁。 5、凡带有黄星标志及VIP会员(有效期内)均免除HR统计。 6. HP为负值,可使用做种积分进行兑换 https://chdbits.co/hnr.php?id=1 捐赠VIP将直接恢复原始值5。 PS: hr已正式上线,请注意rss,种子状态等。特别注意HP兑换未作记录,无法恢复请谨慎操。有条件的请截图保存各项数据,否则发生bug时只能按统一规格䃼偿。任何问题请在站点论坛上报,紧急情况请pm站内10000管理。
@notizieturchia · Post #3239 · 16.04.2025 г., 18:33
#Turchia: scarcerato, dopo 8 anni di detenzione, l'avvocato #SelçukKozağaçlı, Presidente onorario dell'Associazione dei Legali Progressisti, #CHD.
Hashtags
@Ptfxq · Post #736 · 28.09.2024 г., 13:59
#CHDBits#CHD#站免 10.1-10.7全站免费7天 祝全体会员节日快乐