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

Резултати

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

Пребарај: #personaldata

当前筛选 #personaldata清除筛选
International News

@intnewsagency · Post #8875 · 24.03.2026 г., 12:44

Change.org and PADI Americas Fined in Russia for Data Law Violations Russian authorities have fined American platforms Change.org and PADI Americas Inc for breaching Russia’s personal data protection laws. The companies failed to properly store and handle Russian users’ data, prompting regulatory action. Experts stress that "personal data protection is a national security priority." This move underscores Russia’s tightening control over foreign digital services operating within its borders. #Russia#PersonalData#ChangeOrg#PADI#Sanctions The main news of Russia and the world ishere.

В РБК вышла статья по доступности персональных данных на электронных торговых площадках [1]. Более 2,2 миллиона записей и это продолжение результатов моего исследования о персональных данных в удостоверяющих центрах [2]. В этот раз я, вместо того чтобы самому публиковать, передал коллегам из РБК чтобы появился полноценный материал с комментариями экспертов. В третьей части самое ключевое - государственные информационные системы и то какие персональные доступны через них. Но это уже самая серьёзная история Ссылки: [1] https://www.rbc.ru/politics/29/04/2019/5cc2df569a7947c83b69b0d5 [2] https://begtin.tech/pdleaks-p1-uc/ #data#personaldata#privacy#leaks

Маленький преданонс. В августе-ноябре 2018 года мы в Информационная культура и Ассоциация участников рынка данных, а конкретно я лично проводили обследование открытых интерфейсов государственных информсистем и иных информационных систем под госрегулированием на предмет раскрытия из них персональных данных пользователей. Только на основе общедоступной информации. Результаты не были публичными, их направили в Минсвязь, Роскомнадзор, Генпрокуратуру, что-то всё ещё в работе, а многое уже исправлено. Около половины найденного - это сведения из удостоверяющих центров, государственных и не очень. И как раз в их случае большая часть найденного уже исправлена, а остальные не исправят пока их явно не "пнешь" похоже. Лично я долго думал что делать с найденным. Можно ли делать общедоступными результаты этого исследования? Можно ли рассказывать о путях вылова раскрытия перс. данных в информационных системах. В итоге ту часть исследования которая касается удостоверяющих центров мы будем делать общедоступной. Это подробный анализ систем с конкретными путями воспроизведения и скриншотами по 17 УЦ в которых выявлена эта история (из примерно 50% существующих которые мы проверили). Сейчас есть развилка: 1. Сделать это в виде собственного доклада, после перепроверки и дополнения информацией о том что было исправлено в итоге после чего рассылать пресс-релиз. 2. Поделиться с одним из крупных федеральных изданий под то что у них будет 1-2 журналиста готовых проверить то что тогда было выявлено и что исправлено и написать об этом качественный материал сославшись на Инфокультуру и Ассоциацию. Может быть даже провести это исследование повторно охватив 100% УЦ. Если есть идеи и предложения как это лучше сделать - пишите мне на [email protected] #openness#investigations#gis#personaldata