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

Резултати

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

Пребарај: #protectyourdata

当前筛选 #protectyourdata清除筛选
Google Facts™ [ ️@googlefactss🌎]

@googlefactss · Post #40261 · 06.12.2025 г., 04:30

Because we have seen an uptick in people trying to scam others allover the web, we like to remind everyone to stay safe online. Here are a few things that could in fact help you. ● Be careful what you click. Don’t open links or attachments from strangers or suspicious emails. ● Use strong passwords with letters, numbers, and symbols. ● Use a password manager to keep passwords safe and easy to use. ● Keep devices updated and use good antivirus software. ● Don’t share personal info like your address, birthday, real names, workplaces, or locations online. ● Think before you post—anything online can stay forever. ● Watch out for fake profiles and don’t trust people you don’t know. ● Teach kids to spot scams, avoid cyberbullying, and be polite online. ● Backup important data regularly to protect it from malware. ● Close old accounts you don’t use anymore. ● Only download apps or files from trusted sources. ● Use two-factor authentication (2FA) for extra security on your accounts. ● Avoid using public Wi-Fi for sensitive activities like banking. ● Log out from accounts when using shared or public devices. ● Don’t accept friend or follow requests from people you don’t know. ● Be cautious about what apps you allow to access your personal info or location. ● Report any suspicious or harmful behavior to the platform admins or an adult you trust. Stay alert, stay safe, and let’s keep our online community secure together! We know there is much more to it, feel free to share your wisdom or experiences in the comments. [Learn more1] [Learn more2] @googlefactss #OnlineSafety🔒#StaySafeOnline🌐#PasswordSecurity🔑#CyberSecurity🛡️#ProtectYourData📱 #TLDR😜