@RWBY_Gallery · Post #20094 · 01.09.2024 г., 14:14
#Mercury Rainydays_eef @RWBY_Gallery🌹❄️🌑🔥
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
Пребарај: #mercury
@RWBY_Gallery · Post #20094 · 01.09.2024 г., 14:14
#Mercury Rainydays_eef @RWBY_Gallery🌹❄️🌑🔥
Hashtags
@interesting_planet_facts · Post #1195 · 05.01.2026 г., 18:11
🌎 Mercury, the smallest planet in our Solar System, has a surface temperature range from –173°C at night to 427°C during the day. Mercury lacks a significant atmosphere, so heat escapes rapidly after sunset. ✨ #planets⚡#astronomy⚡#mercury 👉subscribe Interesting Planet 👉more Channels
Hashtags
@interesting_planet_facts · Post #1004 · 04.11.2025 г., 18:11
🌎 Blazing through space, Mercury completes a full orbit around the Sun in just 88 Earth days, making it the fastest planet in our Solar System. Its surface temperature can swing from –173°C at night to 427°C during the day because it has almost no atmosphere to trap heat. ✨ #planets⚡#astronomy⚡#mercury 👉subscribe Interesting Planet 👉more Channels
Hashtags
@lsposed_Modules_Updates_Trackers · Post #6623 · 20.04.2026 г., 02:30
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026042001-2026042001 更新时间:2026/04/20 10:05:55 更新日志: 修复一个可能导致通知不稳定的空指针错误 跨日重调时清理旧的逃课信息 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
@lsposed_Modules_Updates_Trackers · Post #6590 · 16.04.2026 г., 10:00
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026041601-2026041601 更新时间:2026/04/16 17:25:58 更新日志: 支持开关模块的预测性返回 支持自定义状态栏岛文本颜色 超级岛按钮新增"我要逃课",点击后取消该课程通知和自动化 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
@lsposed_Modules_Updates_Trackers · Post #6589 · 16.04.2026 г., 09:30
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026041401-2026041401 更新时间:2026/04/14 12:19:47 更新日志: 修复 wakeup数据源自定义时间课程时间错误问题 请强制停止wakeup后启动wakeup等待几秒数据同步 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
@lsposed_Modules_Updates_Trackers · Post #6588 · 16.04.2026 г., 09:00
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026041601-2026041601 更新时间:2026/04/16 16:21:43 更新日志: 支持开关模块的预测性返回 支持自定义状态栏岛文本颜色 超级岛按钮新增"我要逃课",点击后取消该课程通知和自动化 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
@lsposed_Modules_Updates_Trackers · Post #6568 · 14.04.2026 г., 05:00
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026041401-2026041401 更新时间:2026/04/14 12:19:47 更新日志: 修复 wakeup数据源自定义时间课程时间错误问题 请强制停止wakeup后启动wakeup等待几秒数据同步 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
@lsposed_Modules_Updates_Trackers · Post #6541 · 11.04.2026 г., 15:30
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026041102-2026041102 更新时间:2026/04/11 23:14:28 更新日志: 修复已激活但部分情况下显示未激活的问题 按需申请作用域 增加课表数据源切换功能,可使用wakeup或拾光课程表作用数据源,但通知仍从超级小爱发出,需强制停止超级小爱后切换数据源并打开对应软件等待同步数据(只需几秒即可) @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
@lsposed_Modules_Updates_Trackers · Post #6536 · 11.04.2026 г., 06:30
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026041101-2026041101 更新时间:2026/04/11 13:59:47 更新日志: 支持自定义发光效果颜色 支持导入/导出配置 对系统界面的hook只对自身通知生效 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
@lsposed_Modules_Updates_Trackers · Post #6525 · 10.04.2026 г., 15:30
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026041001-2026041001 更新时间:2026/04/10 23:08:46 更新日志: 修复300+系统上状态栏发光效果触发不生效或不稳定的问题 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot
@lsposed_Modules_Updates_Trackers · Post #6512 · 09.04.2026 г., 13:30
#课程表超级岛#Mercury 模块:com.xiaoai.islandnotify 简介:课程表超级岛 版本:2026040901-2026040901 更新时间:2026/04/09 21:09:25 更新日志: 修复默认上课中展开态前置文本1错误\n将全局补发机制默认改为关闭\n状态栏岛增加发光效果,默认关闭,300+系统可能不生效或不稳定,不接受此功能反馈 @lsposed_Modules_Updates_Trackers | @lsposed_Geeks_Bot