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

Резултати

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

Пребарај: #recall

当前筛选 #recall清除筛选
403 Forbidden

@forbid_403 · Post #562 · 22.05.2025 г., 07:27

加密通信应用Signal发布新版本阻止Windows 11 Recall截取聊天记录 知名加密通信应用 Signal Messenger 日前发布消息警告其 Windows 11 用户,该平台的隐私消息遭到 Recall 功能的威胁,为此 Signal for Windows 11 已经发布新版本并阻止微软继续收集其隐私消息。 作为应对措施目前在 Signal 新版本中将默认阻止任何 Windows 11 应用进行截图,如果用户仍然需要截图功能例如为了保持对话内容或使用辅助功能,则必须手动修改 Signal 桌面版设置以启用截图功能。 Signal 在博客中表示: 我们希望构建 Recall 等系统的人工智能团队未来能够更仔细思考这些影响,像是 Signal 这样的应用不应该为了维护其服务的隐私和完整性而在没有合适开发工具的情况下实施一个奇怪的技巧,关心隐私的人也不应该被迫为了 AI 愿景而牺牲可访问性。 🗒 标签: #Signal#Windows #Recall 📢 频道: @GodlyNews1 🤖 投稿: @GodlyNewsBot

Hashtags

Car News

@car_news · Post #1666 · 13.11.2025 г., 13:40

⚠️ The “anti-apocalypse” Cybertruck turned out to be a mess 🤯 The supposedly indestructible EV has a weak spot — its light bar is literally glued on. Because of this flaw, Tesla is recalling over 6,000 Cybertrucks, about 10% of all units sold. The light panel can fall off while driving and hit other vehicles — not exactly the future we were promised. #Tesla#recall#EV@Car_News

Auto Life

@revheadcrypto · Post #51 · 06.07.2024 г., 09:26

🗣 Porsche is recalling all Taycan electric cars sold over the past four years due to an issue with brake hoses. The German automaker has acknowledged that brake hoses in both sedans and wagons may develop cracks, potentially leading to fluid leaks. This defect could impact braking performance. Porsche is advising all Taycan owners worldwide to have their vehicles by authorized dealers! 🚗🔧 #Porsche#Taycan#Recall#Auto

12
ПретходнаСтраница 1 од 2Следна