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

Резултати

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

Пребарај: #editing

当前筛选 #editing清除筛选
Song Hayoung Fromis_9 Sticker

@stickershayoung · Post #55 · 15.03.2021 г., 05:02

ʚ 。𔘓 𝐊eyñatha's diɑ᤻ry ʚ 。𔘓 Hayoung ( bright psd ) #EDITING / oil paint edit ñ。free to use but dont claim it as urs , mau share ke ch ? use credit or i tampol ur face.

Hashtags

Song Hayoung Fromis_9 Sticker

@stickershayoung · Post #34 · 09.03.2021 г., 16:11

ʚ 。𔘓 𝐊eyñatha's diɑ᤻ry ʚ 。𔘓 hayoung fromis_9 ( original。soft psd ) #EDITING / butterfly cute split ñ。free to use but dont claim it as urs , mau share ke ch ? use credit or i tampol ur face.

Hashtags

Libreware

@libreware · Post #1461 · 29.05.2025 г., 14:13

A View on the Open-Source Video Editing Landscape https://youtu.be/qEYGGqolEvs https://media.ccc.de/v/lgm25-upstream-2025-83652-a-view-on-the-open-source-video-editing-landscape Whether it is stitching together some travel footage or producing high-quality film content, there are many ways people want to work with the medium "video". Their needs for #video#editing solutions are diverse, and so is their budget. Open-source video editing software seems great for beginners to get started at zero cost. What do you get and what do you have to give up on compared to the closed-source options? What does it even take to build software like this from scratch, technologically as well as mentally? This talk takes a brief look at the free-to-use options for video editing on a desktop computer before switching the perspective to that of the developers and maintainers of such software. It offers insights into the struggles with technology, fundraising, self-motivation, and community dynamics, while also highlighting the rewarding moments and intriguing current and future developments. Simran Spiller https://pretalx.c3voc.de/lgm25-upstream-2025/talk/504479317/ #editor#lgm2025

Слабоумие и синопсис

@dementiaetsinopsis · Post #585 · 26.02.2023 г., 11:01

​​​​Режиссер монтажа Bill Neil из BUDDHA JONES заглядывает под юбку науке создания трейлеров. В начале довольно подробный разбор тизера NOPE, затем много классики (ALIEN, THE FOG), во второй половине экскурс в его более ранние работы среди которых HALLOWEEN Дэвида Гордона Грина, 10 CLOVERFIELD LANE, THE TEXAS CHAINSAW MASSACRE и др. Вообще Билл идеальное воплощение современного режиссера монтажа — помимо очевидного понимания сторителлинга, наука монтажа это конечно же про дизайн и эстетику. Каждый звук и скрип запрятанный под слоем фолей или эффектов является химическим элементом активирующим ту самую формулу отвечающую за ‘магию кино’. #trailers#filmgrammar#editing

Desi Memes Funny Jokes

@DESI_MEMES_Funny_Jokes · Post #5922 · 04.12.2024 г., 15:01

Bro drop test bhi kar lete 🌚 . . #test#child#baby#birthday#test#droptest#first#last#jump#toys#playing#alive#son#editing#greenscreen#trending#explorepage#explore#drop#father