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

Резултати

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

Пребарај: #queen

当前筛选 #queen清除筛选
无损音乐分享频道

@d_wusun · Post #5957 · 29.03.2026 г., 05:52

名称:Queen - Queen II (2026 Mix) FLAC Hi-Res 24bit 96kHz qobuz 描述:1974年经典专辑《Queen II》2026年 全新混音重制,由Brian May与Roger Taylor监制,御用团队重塑母带,还原乐队早期最厚重、华丽的艺术摇滚气质 。专辑分“白/黑”双主题,《White Queen》《March of the Black Queen》等名作细节更通透,层次更立体。作为皇后乐队首张公认杰作,此版以现代技术重现70年代录音的磅礴与精致,是乐迷必收的经典重绎版本 。 链接:https://pan.quark.cn/s/b82029cbde0c 📁 大小:668MB 🏷 标签:#hires#无损音乐#音乐#皇后乐队#queen

无损音乐分享频道

@d_wusun · Post #5924 · 26.03.2026 г., 23:32

名称:Queen - Queen II (2026 Mix) FLAC Hi-Res 24bit 96kHz qobuz 描述:1974年经典专辑《Queen II》2026年 全新混音重制,由Brian May与Roger Taylor监制,御用团队重塑母带,还原乐队早期最厚重、华丽的艺术摇滚气质 。专辑分“白/黑”双主题,《White Queen》《March of the Black Queen》等名作细节更通透,层次更立体。作为皇后乐队首张公认杰作,此版以现代技术重现70年代录音的磅礴与精致,是乐迷必收的经典重绎版本 。 链接:https://pan.quark.cn/s/b82029cbde0c 📁 大小:668MB 🏷 标签:#hires#无损音乐#音乐#皇后乐队#queen

无损音乐分享频道

@d_wusun · Post #5906 · 24.03.2026 г., 17:47

名称:Queen - 2011年SACD系列 - Hot Space DSD DSF 描述:1981年,在David Bowie的帮助下,QUEEN成功在新浪潮音乐的汹涌波涛中站稳了脚跟,单曲Under Pressure登上了英国排行榜的冠军位置,这也是他们继Bohemian Rhapsody以来的另一首冠军单曲,收录在1981年出版的精选专辑Greatest Hits以及1982年的专辑Hot Space(白热地带)中。不过Hot Space专辑并没有引起人们多大的热情,因为这仍是一张轻松取巧的专辑,既不那么流行又不那么高雅。 01. Staying Power 02. Dancer 03. Back Chat 04. Body Language 05. Action This Day 06. Put Out the Fire 07. Life Is Real (Song for Lennon) 08. Calling All Girls 09. Las Palabras de Amor (The Words of Love) 10. Cool Cat 11. Under Pressure 链接:https://pan.quark.cn/s/f03e3c84c0ee 📁 大小:1.74GB 🏷 标签:#Queen#Hot Space 日版 #音乐#无损音乐#猪儿虫

Google Facts™ [ ️@googlefactss🌎]

@googlefactss · Post #40176 · 23.11.2025 г., 23:01

Freddie Mercury passed away on November 24, 1991—the very day his song "Bohemian Rhapsody" climbed back to number one on the UK charts as a heartfelt tribute. 🎤🏆 [Read more] Feel free to share his music or tributes. Please keep it relevant and respectful. [Read more] @googlefactss #FreddieMercury#Queen#MusicHistory

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