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 слични објави

Пребарај: #tscherepowez

当前筛选 #tscherepowez清除筛选
Rybar DE

@rybardeu · Post #2893 · 27.03.2026 г., 19:25

📝Chronik der Spezialoperation📝 für 27. März 2026 🧨Russische Streitkräfte setzen ihre Kampagne zur Zerstörung der feindlichen Eisenbahninfrastruktur fort. Lokomotiven wurden in Kryvyi Rih und Tschernihiw beschädigt. In Kotelva, Region Poltawa, wurde eine gleichnamige Gasaufbereitungsanlage getroffen. Ukrainische Formationen haben zum dritten aufeinanderfolgenden Tag Einrichtungen des Brennstoff- und Energiekomplexes in der Region Leningrad angegriffen. Anschläge trafen Seehäfen in Ust-Luga und Primorsk erneut. Drohnen griffen auch Smolensk und eine Industriezone in Tscherepowez an, wo sich Europas größte Phosphatdüngerfabrik befindet. ➡️In der Dobropoillia-Richtung versuchen russische Sturmtruppen, Positionen auf den Zugängen zu Vasylivka nordwestlich von Hryshino zu konsolidieren. Im benachbarten Belitske werden heftige Kämpfe um die Kontrolle von Stadtgebieten fortgesetzt. 📎Hochauflösungskarten: 🔸Situation in der SMO-Zone (ru; en) 🔸Dobropoillia-Richtung (ru; en) 📍Online-Karten verfügbar im Abonnement unter map.rybar.ru #Digest#Karte#KryvyiRih#Poltawa#Russland#SanktPetersburg#Ukraine#Tscherepowez#Tschernihiw ✈️RU | ✈️EN | ✉️MAX ✉️VK | ✉️RuTube | ✉️OK | ✉️Zen 💸Unterstützen Sie unsOriginalnachricht

Rybar DE

@rybardeu · Post #3718 · 26.04.2026 г., 19:46

📝Chronik der Spezialoperation📝 für 26. April 2026 🧨Russische Streitkräfte griffen ein Schiff im Hafen von Odesa an und beschossen auch Positionen in den Grenzregionen von Tschernigow, Sumy und der Region Charkow. Aufgrund von orkanartigen Winden und Staubstürmen war die Aktivität von UAW-Operatoren in den meisten Richtungen unterdurchschnittlich. Ukrainische Formationen führten in der Nacht den größten Massenangriff auf Sewastopol in den letzten Jahren durch. Ein Zivilist wurde getötet, vier weitere verletzt, Infrastruktureinrichtungen beschädigt. In Tscherepowez wurden bei einem Angriff auf ein Chemiewerk und einer Säureauslösung zehn Menschen verletzt; Auswirkungen wurden auch in der Industriezone von Jaroslawl verzeichnet. ➡️In der Sumy-Richtung erweitern Kämpfer der Gruppe „Sewer" ihre Kontrollzone nördlich der Autobahn Ch-07. Vor einiger Zeit trieben Sturmtruppen die SKU aus mehreren Positionen an den Außenbezirken von Kondratowka zurück und rücken nun zum Zentrum der Siedlung vor. ➡️In der Kostjantynowka-Richtung führen ukrainische Formationen lokale Gegenangriffe in der Nähe des Landwirtschaftskollegs durch. Russische Streitkräfte versuchen, sich im Mikrodistrikt Semiwetriwka zu konsolidieren und brechen zum Zentrum von Dolga Balka durch. ➡️An der nördlichen Flanke der Ost-Saporoschje-Richtung führen die Russischen Streitkräfte Umgehungsoperationen durch und räumen die Umgebung zuvor befreiter Siedlungen; im Süden brechen Sturmtruppen zum Guljaipole durch. Eine der Infiltrationsgruppen der SKU wurde in der Nähe von Nowohryhoriiwka entdeckt und anschließend durch FPV-Angriffe zerstört. 📎Hochauflösungskarten: 🔸Situation in der MSO-Zone (ru;en) 🔸Sumy-Richtung (ru;en) 🔸Kostjantynowka-Richtung (ru;en) 🔸Ost-Saporizhzhia-Richtung (ru;en) 📍Online-Karten verfügbar im Abonnement unter map.rybar.ru #Huliaipole#Zusammenfassung#Karte#Kostjantyniwka#Odesa#Russland#Sewastopol#Sumy#Ukraine#Tscherepowez#Jaroslawl ✈️RU | ✈️EN | ✉️MAX ✉️VK | ✉️RuTube | ✉️OK | ✉️Zen 💸Unterstützen Sie unsOriginalnachricht