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

Резултати

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

Пребарај: #theaterstudio

当前筛选 #theaterstudio清除筛选
Russisches Haus in Berlin

@rushaus · Post #1972 · 21.10.2025 г., 16:18

🎭 Wir laden Kinder und Jugendliche ein, Theater als Raum für Kreativität, Bewegung und Ausdruck zu entdecken! Hier lernen sie, auf der Bühne mit Stimme, Körper und Fantasie zu arbeiten. 👩Unter der Leitung von Irina Sokolova-Gordon, Regisseurin und Theaterpädagogin mit langjähriger Erfahrung, üben die Kinder, sich zu konzentrieren, Gefühle auszudrücken und Verantwortung füreinander zu übernehmen. Durch Bewegung, Sprache und kleine Improvisationenentwickeln sie Selbstvertrauen, Präsenz und Freude am gemeinsamen Gestalten.😍 Am Ende jeder Etappe zeigen sie ein Bühnenprojekt und präsentieren dabei, was in ihnen steckt.🪄 ✨ Gruppen: Kinder ab 6 Jahren Jugendliche ab 10 Jahren Junge Erwachsene ab 15 Jahren 📩Anmeldung und Informationen: [email protected] #theater#theaterstudio#kinder#bühne

Russisches Haus in Berlin

@rushaus · Post #1941 · 17.09.2025 г., 08:39

Wenn euer Kind Freude daran hat, in Rollen zu schlüpfen, Geschichten zu erfinden und auf der Bühne zu stehen, dann laden wir euch herzlich in die Welt des Theaters ein.🎭 Am 20. September um 14:30 Uhr findet ein Treffen mit der künstlerischen Leiterin der Kinder- und Jugendtheaterwerkstatt „Debüt“, Inna Sokolova-Gordon, statt. Dort erfahrt ihr alles über das Programm der Theaterkursen für verschiedene Altersgruppen (👧🏼6+ oder 🧒🏻10+). In der Werkstatt entdecken die Kinder das Theater nicht nur als Kunstform, sondern auch als Weg, sich selbst zu entfalten. Sie lernen: ✨Schauspielkunst – Konzentration, Fantasie, Ausdruck und die Freude am gemeinsamen Spiel. ✨Bewegung – Körperbewusstsein, Koordination, Ausdruckskraft, dazu Elemente aus Akrobatik, Pantomime, Fechten oder historischem Tanz. ✨Bühnensprache – Artikulationsübungen, klare Aussprache, sprachliche Logik und die Freude am Vorlesen und Erzählen. Das Gelernte präsentieren die Kinder regelmäßig in offenen Stunden, kreativen Projekten und Aufführungen. 🌟 Geleitet wird das Programm von Inna Sokolova-Gordon, Regisseurin und Dozentin für Theaterdisziplinen, Mitglied des Internationalen Theaterinstituts bei der UNESCO und künstlerische Leiterin des Theaters „Russische Bühne“ am Russischen Haus in Berlin. 📩 Anmeldung: [email protected] Kommt vorbei und beginnt eure große künstlerische Reise!🚀 #theater#theaterstudio#schauspiel#kinder#kurse