@Hezu2 · Post #68918 · 19.05.2026 г., 08:45
#Netflix🇭🇰香港,4K方案,季付63元,5人车补1人,只招长期车友,短期勿扰,跳车不退,翻车按比例退尾款。UID:5252630170 【状态】现已满员
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
Пребарај: #netflix
@Hezu2 · Post #68918 · 19.05.2026 г., 08:45
#Netflix🇭🇰香港,4K方案,季付63元,5人车补1人,只招长期车友,短期勿扰,跳车不退,翻车按比例退尾款。UID:5252630170 【状态】现已满员
Hashtags
@Hezu2 · Post #68904 · 18.05.2026 г., 12:41
#Netflix🇺🇸美国,美国区4K,70一季/130半年,5人车补3人,禁Apple TV ps5游戏设备,翻车按比例退,跳车不退。UID:456193055
Hashtags
@Hezu2 · Post #68898 · 18.05.2026 г., 06:12
#Netflix🇵🇭菲律宾,4K方案,季付51元,5人车补2人,推荐新加坡节点,不要频繁换节点,不可使用appletv 安卓tv,游戏机,只招长期车友,短期勿扰,翻车按比例退余款。UID:770514183
Hashtags
@Hezu2 · Post #68893 · 18.05.2026 г., 01:13
#Netflix🇭🇰香港,4K方案,64,5人车补2人,🈲Apple TV,安卓盒子,游戏机等触发同户的设备,跳车不退,翻车按比例退款,仅需长期稳定车友。UID:8265663658 【状态】现已满员
Hashtags
@Hezu2 · Post #68883 · 17.05.2026 г., 05:37
#Netflix🇺🇸美国,4K方案,季付68,5人车补4人,禁Apple TV/安卓tv,ps5等游戏设备,翻车按比例退,跳车不退 ,来长期车友。UID:7131311998
Hashtags
@Hezu2 · Post #68873 · 16.05.2026 г., 08:15
#Netflix🇭🇰香港,4K方案,季付63元,5人车补3人,需固定节点(香港)观看,🈲Apple TV,安卓盒子,游戏机等触发同户的设备,跳车不退,翻车按比例退款,仅需长期稳定车友,拉微信群。UID:891737776 【状态】现已满员
Hashtags
@Hezu2 · Post #68871 · 16.05.2026 г., 08:15
#Netflix🇲🇴澳门,4K,季付60,5人车补1人,固定香港、新加坡节点,限iPhone、ipad、网页使用,禁止使用其他设备及乱飞节点,短期勿扰。UID:1192698766
Hashtags
@Hezu2 · Post #68858 · 15.05.2026 г., 11:49
#Netflix🇧🇿伯利兹,4K 方案,寄付 45 元,5人车补3人,只招长期车友,禁止 tv 游戏机电视棒登录,短期勿扰,跳车不退,翻车按比例退尾款。UID:508701999 【状态】现已满员
Hashtags
@Hezu2 · Post #68857 · 15.05.2026 г., 11:49
#Netflix🇳🇬尼日利亚,4K方案,季付40,5人车补4人,禁TV和游戏机,跳车不退,翻车按比例退尾款。UID:2107713456 【状态】现已满员
Hashtags
@Hezu2 · Post #68856 · 15.05.2026 г., 11:28
#Netflix🇺🇸美国,4K无广告,70一季/130半年,5人车补3人,禁Apple TV ps5游戏设备,翻车按比例退,跳车不退。UID:456193055
Hashtags
@Hezu2 · Post #68846 · 14.05.2026 г., 09:18
#Netflix🇭🇰香港,4K方案,季付63元,5人车补1人,只招长期车友,短期勿扰,跳车不退,翻车按比例退尾款。UID:5522824100
Hashtags
@Hezu2 · Post #68840 · 14.05.2026 г., 07:02
#Netflix🇺🇦乌克兰,4K方案,季付60元,5人车补1人,固定香港IP使用,禁用TV/盒子/游戏机等触发同戶设备,仅支持手机/平板/网页观看,禁止共享,限一部设备同时观看,建VX群,跳车不退,翻车比例退尾款,招长期车友。UID:5696073107 【状态】现已满员
Hashtags