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

Резултати

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

Пребарај: #visual

当前筛选 #visual清除筛选
EOM

@energy_of_music · Post #52408 · 15.04.2026 г., 14:58

Мадонна в её 48 на Коачелле ровно 20 лет назад со своей «Hung up» (2006) #visual в смысле подписаться?

Hashtags

j'accuse

@jaccuse · Post #23 · 24.07.2017 г., 09:10

"Выставка "Тарковский и Плавинский" в "Новом пространстве" Театра наций не закрылась на этой неделе, как планировалось — а продолжит работу до конца августа; что ж, повод сказать о ней два слова. Режиссер Тарковский и художник Дмитрий Плавинский были почти ровесниками и вращались более-менее в одних и тех же кругах, но знакомы не были; их пересечение — воля куратора, а не факт их биографии. Выставка совсем небольшая, на первом этаже фотографии Тарковского 60-70-х (какой же он был денди), на втором — работы Плавинского и большие видеопроекции из "Андрея Рублева". Если попытаться сформулировать самым грубым образом, в чем тут сходство — оба занимались поисками сакрального, сверхценного, вечного в самую неподходящую для этого эпоху: осколки священных тайн, черепки древних цивилизаций, непостижимые сигналы из глубин вселенной, культура, растворяющаяся в природе. Сейчас эпоха снова неподходящая, и вжиться в это мироощущение крайне сложно — и поэтому, конечно, хотелось бы, чтоб на выставку пришло как можно больше народу, но смотреть ее лучше в одиночестве. И еще одна деталь: на втором этаже, где картины и видеопроекции, играет по кругу фа-минорная прелюдия Баха из "Соляриса", а поверх нее пущен специально сделанный аудиоколлаж — лесной шум, пение птиц, отдаленный звон колоколов, невесть откуда взявшийся вибрафон, похоже на инструментал в конце альбома "Гражданской обороны" — и да, так можно что-то почувствовать." #visual#cinema

椒盐豆豉剪报

@mtfront · Post #4244 · 26.02.2026 г., 18:04

快乐地图 什么让人们快乐?布丁用了一个 2017 年的研究收集到的超过十万个快乐瞬间的数据做了一个可视化分析。有有引导的故事模式也有可以自由探索和 filter 的数据模式。 #data#visual

Hashtags

椒盐豆豉剪报

@mtfront · Post #3638 · 18.11.2024 г., 06:21

情歌已死……吗? 布丁又来了,这篇互动视觉 eassy 分析了几十年来的流行曲目来回答“情歌是否已死(被关于性的歌曲取代)”这个问题。当“情歌”的定义不断被拓宽,也能得出不同的结论,每一个节点都有代表作可以播放高亮选段,还能高亮固指定歌手或歌。文章结尾还提供了可以自选 category 的互动视图。 (WAP 要是也能算情歌的话是有点夸张了吧🤣) #data#visual

Hashtags

椒盐豆豉剪报

@mtfront · Post #3396 · 19.07.2024 г., 16:48

举办奥运会的成本估算(已校准通货膨胀) 2014 年冬奥会竟然比北京奥运会还贵,老大哥们都好好大喜功啊。 #data#visual

Hashtags

椒盐豆豉剪报

@mtfront · Post #3341 · 01.07.2024 г., 20:33

极端温度如何影响人类生活 Our world in data 出了一个极端温度对人类死亡率的影响的两部分析,第一篇是现有的气候相关死亡率,第二篇是对未来的预测 #data#visual

Hashtags

椒盐豆豉剪报

@mtfront · Post #3202 · 27.04.2024 г., 00:53

各类出行方式的碳足迹 图中数据综合了能源使用和上座率。数字为每位乘客每千米的碳排放量。欧铁也太低碳了吧!游轮不愧是最被大家嫌弃的碳怪兽,但短途飞机也很高碳。 #data#visual

Hashtags

椒盐豆豉剪报

@mtfront · Post #3178 · 11.04.2024 г., 19:36

美国 2023 年实际 GDP 增长排前十的州。最大增长来自矿业和石油天然气。 与此同时,2023 年增长最慢的是 Delaware, Mississippi, New York,都在 1% 以下。全国平均增长是 2.5%。 (搞不懂都做地图了为啥不所有州的数字都做进去🤔) #data#visual

Hashtags

椒盐豆豉剪报

@mtfront · Post #3152 · 28.03.2024 г., 21:48

美国每个州的主要出口产品(telegram 压图严重可以点进文章去看原图) 华州最多的竟然是向中国出口农产品,卖的什么樱桃吗🤣(不过有一说一上次 road trip 华州东部确实超多农田开车几个小时见不到头那种,华西也产很多海鲜) #data#visual

Hashtags

123•••10•••202122
ПретходнаСтраница 1 од 22Следна